• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Listboxa Exceldeki verileri Çekme

Katılım
22 Mayıs 2020
Mesajlar
10
Excel Vers. ve Dili
2010 Excel ve Türkçe
Başlıktada belirtiğim gibi Listboxa Faturaları çekmek istiyorum

Private Sub UserForm_Initialize()
ss = Sayfa14.Range("A1500000").End(xlUp).Row
lstAlisFatura.RowSource = "AlisFaturalari!A2:F" & ss
End Sub

Listbox İsmi lstAlisFaturasi
Excel Sayfamın Adı AlisFaturalari
6 sütundan oluşuyor.

Aldığım hata ise Method 'Range' of object _worksheet failed

yardımlarınız için tşk ederim.
 
Merhaba,
Dener misiniz?
Eğer bu kodlar işe yaramadı diyorsanız, örnek dosya paylaşmalısınız.
C++:
Private Sub UserForm_Initialize()
    ss = Sheets("Sayfa14").Cells(Rows.Count, "A").End(3).Row
    lstAlisFatura.ColumnCount = 6
    lstAlisFatura.RowSource = "AlisFaturalari!A2:F" & ss
End Sub
 
Merhaba,
Dener misiniz?
Eğer bu kodlar işe yaramadı diyorsanız, örnek dosya paylaşmalısınız.
C++:
Private Sub UserForm_Initialize()
    ss = Sheets("Sayfa14").Cells(Rows.Count, "A").End(3).Row
    lstAlisFatura.ColumnCount = 6
    lstAlisFatura.RowSource = "AlisFaturalari!A2:F" & ss
End Sub


Malesef Run time error 9
Subscript out of range hatası verdi
 
yani kısaca yapmak istediğim şey excel sayfasına kayıt ettiğim faturaları fatura listesinde listboxta göstermek
 
Deneyiniz.

C++:
Private Sub UserForm_Initialize()
    Listele
End Sub

Sub Listele()
    Dim x As Long
    x = Sheets("AlisFaturalari").Cells(Rows.Count, 1).End(3).Row
    lstAlisFatura.ColumnCount = 6
    lstAlisFatura.ColumnHeads = True
    lstAlisFatura.RowSource = "AlisFaturalari!A2:F" & x
End Sub
 
Deneyiniz.

C++:
Private Sub UserForm_Initialize()
    Listele
End Sub

Sub Listele()
    Dim x As Long
    x = Sheets("AlisFaturalari").Cells(Rows.Count, 1).End(3).Row
    lstAlisFatura.ColumnCount = 6
    lstAlisFatura.ColumnHeads = True
    lstAlisFatura.RowSource = "AlisFaturalari!A2:F" & x
End Sub

bende böyle yaptım çekebildim sonunda
Dim x As Long
For x = 2 To 1000000
If Sheets("AlisFaturalari").Range("A" & x).Value = "" Then Exit For
Next
lstAlisFatura.ColumnCount = 6
lstAlisFatura.RowSource = "AlisFaturalari!A2:F" & x

Sizinki de çalıştı Tşk ederim.
 
Son dolu satırı tespit etmek için döngü kullanmışsınız. Bu verimsiz olacaktır. Kayıt sayısı arttıkça zaman kaybına yol açacaktır.
 
Geri
Üst