• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Çözüldü ListBoxa comboboxdan veri çekmede hata

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Discreum

Yeni Üye
Katılım
21 Mar 2021
Mesajlar
152
Aldığı beğeni
37
Excel V
Office 2019 TR
Konu Sahibi
Private Sub ComboBox2_Change()
On Error Resume Next

ListBox1.RowSource = "ComboBox2.Text!A2:I" & Last_Row
With Me.ListBox1
ListBox1.TextAlign = fmTextAlignCenter

.ColumnHeads = True
.ColumnCount = 9
.ColumnWidths = "30,90,90,80,60,40,50,60,50"

End With
End Sub

hatanın sebebi nedir ben çözemedim bi türlü teşekkür ederim.
 
Genel bir değişken değilse Last_Row un kod içinde bir tanımı yok. Onu tanimlayin son satır olarak.
 
Discreum
Anladığım kadarıyla belirli bir sayfadan listboxa veri çekmek istiyorsunuz,
Fakat kodunuzda sayfa adı yerine Combobox2.text yazmışsınız, bu sayfa adıysa sıkıntı yok.
Sayın himmgarip 'in dediği gibi Last_Row değişkenine değer atamamışsınız.
Kodu aşağıdaki şekilde deneyiniz.
Ben Sayfa1 olarak yazdım, siz sayfa adınız ne ise onu kullanın.


HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
 
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
şeklinde dener misiniz?
Hatalar olabilir mobilden denemeden yazdım
 
Son düzenleme:
ListBox1.RowSource = "ComboBox2.Text!A2:I
Bu satırda bence ComboBox2.Text ifadesi de tırnak dışına alınmalıydı
Not: son satır A sütununa gore bulunmuştur sizde hangi sutunda veri olmak zorundaysa o sutun seçilmeli
 
Bu satırda bence ComboBox2.Text ifadesi de tırnak dışına alınmalıydı
Not: son satır A sütununa gore bulunmuştur sizde hangi sutunda veri olmak zorundaysa o sutun seçilmeli
halily hocam, sayfa adını combobox2 den alacaksa şayet, yanlış prosedürün içerisine yazılmış kodlar. Combobox2_AfterUpdate ya da exit prosedürü kullanılsa daha iyi olurdu
 
arschimet hocam bence change olayında da çalışabilmeli çünkü veri değiştiğinde otomatik olarak prosedür çalışır
 
Aşağıdaki görselde Combo box A1:A7 arasındaki veriyi alıyor listbox da aynı verileri ComboBox dan alıyor. kodlarda görseldedir ...Kodlar Worksheed in Activate yordamına yazılmalıdır.
 
Konu Sahibi
ilginiz için teşekkür ederim. o sorunu buradaki yorumlardan ortak olarak çözdüm ama hazır konu canlıyken aynı yerden bi soru daha sormak istiyorum
Private Sub UserForm_Activate()


With Me.ComboBox1
.Clear
.AddItem "A BLOK"
.AddItem "C BLOK"
.AddItem "D BLOK"
.AddItem "E BLOK"
.AddItem "F BLOK"
.AddItem "G BLOK"
End With

With Me.ComboBox2
.Clear
.AddItem "ekodeme"
.AddItem "Asansor"
.AddItem "Kamera"

End With

Dim i As Byte
With ListBox2
.Clear
.ColumnCount = 1
For i = 0 To ComboBox2.ListCount - 1
.AddItem ComboBox2.List(i)

Next i
End With

Call Refresh_Data

End Sub




burada
With Me.ComboBox2
.Clear
.AddItem "ekodeme"
.AddItem "Asansor"
.AddItem "Kamera"

End With
bu koda ben girip yazmak yerine sayfa1 deki a stunundaki verilerin gelmesini istiyorum bir kaç örnek yaptım ama ya sayfa boşa çıkıyor ya da hata alıyorum
 
Userform açılış kodlarına;

HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

dener misiniz?
 
Konu Sahibi
malesef debug hatası alıyorum hatta on error resume next merak ettim yazdım excel komple kitlendi :D
 
Konu Sahibi
Private Sub UserForm_Activate()
With Me.ComboBox1
.Clear
.AddItem "A BLOK"
.AddItem "C BLOK"
.AddItem "D BLOK"
.AddItem "E BLOK"
.AddItem "F BLOK"
.AddItem "G BLOK"
End With

Dim e As Long
For e = 1 To Sayfa4.Range("A1000000").End(xlUp).Offset(1, 0).Row
Me.ComboBox2.AddItem Sayfa4.Cells(e, 1).Value
Next e

Dim i As Byte
With ListBox2
.Clear
.ColumnCount = 1
For i = 0 To ComboBox2.ListCount - 1
.AddItem ComboBox2.List(i)
Next i
End With
Call Refresh_Data
End Sub

şu şekilde düzelttim destekleriniz için teşekkür ederim.
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst