listbox a combobox ile veri listeleme ve boş satır gösterme sorunu.

Katılım
12 Mart 2021
Mesajlar
26
Excel Vers. ve Dili
2016
Altın Üyelik Bitiş Tarihi
04-04-2022
Merhabalar üstadlarım... Yarım yamalak excel bilgim ve sağdan soldan izlediğim video birde sizin sayfanızdan edindiğim bilgilerle bir fatura takip programı yapmaya çalışıyorum. Başlıktanda anlayacağınız gibi sorunum comboboxdaki seçili olan firmanın sayfasına gidip alttaki kodlardaki gibi belirlediğim sayfadan çekecek. ve birde ne yaparsam yapayım boş satırlarıda listeliyor. :(


Private Sub UserForm_Initialize()


ListBox1.RowSource = "deneme!A1: K1" & Range("A65536").End(xlUp).Row
ListBox1.ColumnCount = 11
ListBox1.ColumnWidths = "45;45;65;45;45;45;45;45;45;45;45"
ListBox1.MultiSelect = fmMultiSelectMulti
ListBox1.ListStyle = fmListStyleOption


End Sub

burada deneme yazan yerdeki deneme yerine comboboxda ki seçili olan sayfadan veri getirmesi.
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
ListBox1.RowSource = "deneme!A1: K1" & Range("A65536").End(xlUp).Row
Bu satır zaten hatalı.Sanırım şunu yapmaya çalıştınız. K1 ifadesine dikkat
ListBox1.RowSource = "deneme!A1: K" & Range("A65536").End(xlUp).Row

Sorunuzun diğer kısmı için sanırım öncelikle comboboxa firma adlarını almalısını. Bu sebeple initialize olayında ComboBox1 içine sayfa isimlerini aldım
ComboBox1 den sayfa seçince ListBox1 içine ilgili sayfanın A sütunundaki son dolu hücreyi baz alacak şekilde A1:Kxx aralığını listeledik.

C++:
Private Sub UserForm_Initialize()
For i = 1 To Worksheets.Count
    ComboBox1.AddItem Worksheets(i).Name
Next i
End Sub
Private Sub ComboBox1_Change()
If ComboBox1.ListIndex = -1 Then Exit Sub
    Son = Worksheets(ComboBox1.Text).Range("A65536").End(xlUp).Row
    ListBox1.ColumnCount = 11
    ListBox1.ColumnWidths = "45;45;65;45;45;45;45;45;45;45;45"
    ListBox1.RowSource = ComboBox1.Text & "!A1:K" & Son
    ListBox1.MultiSelect = fmMultiSelectMulti
    ListBox1.ListStyle = fmListStyleOption
End Sub
 
Katılım
12 Mart 2021
Mesajlar
26
Excel Vers. ve Dili
2016
Altın Üyelik Bitiş Tarihi
04-04-2022
ListBox1.RowSource = "deneme!A1: K1" & Range("A65536").End(xlUp).Row
Bu satır zaten hatalı.Sanırım şunu yapmaya çalıştınız. K1 ifadesine dikkat
ListBox1.RowSource = "deneme!A1: K" & Range("A65536").End(xlUp).Row

Sorunuzun diğer kısmı için sanırım öncelikle comboboxa firma adlarını almalısını. Bu sebeple initialize olayında ComboBox1 içine sayfa isimlerini aldım
ComboBox1 den sayfa seçince ListBox1 içine ilgili sayfanın A sütunundaki son dolu hücreyi baz alacak şekilde A1:Kxx aralığını listeledik.

C++:
Private Sub UserForm_Initialize()
For i = 1 To Worksheets.Count
    ComboBox1.AddItem Worksheets(i).Name
Next i
End Sub
Private Sub ComboBox1_Change()
If ComboBox1.ListIndex = -1 Then Exit Sub
    Son = Worksheets(ComboBox1.Text).Range("A65536").End(xlUp).Row
    ListBox1.ColumnCount = 11
    ListBox1.ColumnWidths = "45;45;65;45;45;45;45;45;45;45;45"
    ListBox1.RowSource = ComboBox1.Text & "!A1:K" & Son
    ListBox1.MultiSelect = fmMultiSelectMulti
    ListBox1.ListStyle = fmListStyleOption
End Sub
üstadım maalesef ben bir yerde hata yapıyor olmalıyım çalıştıramadım çalışmayı size gönderiyorum bilginize.
dosyayı ekleyip göndersem size bakabilirmisiniz ? bu arada dosya nasıl ekleniyor burada ?
 
Katılım
12 Mart 2021
Mesajlar
26
Excel Vers. ve Dili
2016
Altın Üyelik Bitiş Tarihi
04-04-2022
ListBox1.RowSource = "deneme!A1: K1" & Range("A65536").End(xlUp).Row
Bu satır zaten hatalı.Sanırım şunu yapmaya çalıştınız. K1 ifadesine dikkat
ListBox1.RowSource = "deneme!A1: K" & Range("A65536").End(xlUp).Row

Sorunuzun diğer kısmı için sanırım öncelikle comboboxa firma adlarını almalısını. Bu sebeple initialize olayında ComboBox1 içine sayfa isimlerini aldım
ComboBox1 den sayfa seçince ListBox1 içine ilgili sayfanın A sütunundaki son dolu hücreyi baz alacak şekilde A1:Kxx aralığını listeledik.

C++:
Private Sub UserForm_Initialize()
For i = 1 To Worksheets.Count
    ComboBox1.AddItem Worksheets(i).Name
Next i
End Sub
Private Sub ComboBox1_Change()
If ComboBox1.ListIndex = -1 Then Exit Sub
    Son = Worksheets(ComboBox1.Text).Range("A65536").End(xlUp).Row
    ListBox1.ColumnCount = 11
    ListBox1.ColumnWidths = "45;45;65;45;45;45;45;45;45;45;45"
    ListBox1.RowSource = ComboBox1.Text & "!A1:K" & Son
    ListBox1.MultiSelect = fmMultiSelectMulti
    ListBox1.ListStyle = fmListStyleOption
End Sub
Tamam hocam çalıştırdım Eline sağlık on numara olmuş.
 
Katılım
12 Mart 2021
Mesajlar
26
Excel Vers. ve Dili
2016
Altın Üyelik Bitiş Tarihi
04-04-2022
ListBox1.RowSource = "deneme!A1: K1" & Range("A65536").End(xlUp).Row
Bu satır zaten hatalı.Sanırım şunu yapmaya çalıştınız. K1 ifadesine dikkat
ListBox1.RowSource = "deneme!A1: K" & Range("A65536").End(xlUp).Row

Sorunuzun diğer kısmı için sanırım öncelikle comboboxa firma adlarını almalısını. Bu sebeple initialize olayında ComboBox1 içine sayfa isimlerini aldım
ComboBox1 den sayfa seçince ListBox1 içine ilgili sayfanın A sütunundaki son dolu hücreyi baz alacak şekilde A1:Kxx aralığını listeledik.

C++:
Private Sub UserForm_Initialize()
For i = 1 To Worksheets.Count
    ComboBox1.AddItem Worksheets(i).Name
Next i
End Sub
Private Sub ComboBox1_Change()
If ComboBox1.ListIndex = -1 Then Exit Sub
    Son = Worksheets(ComboBox1.Text).Range("A65536").End(xlUp).Row
    ListBox1.ColumnCount = 11
    ListBox1.ColumnWidths = "45;45;65;45;45;45;45;45;45;45;45"
    ListBox1.RowSource = ComboBox1.Text & "!A1:K" & Son
    ListBox1.MultiSelect = fmMultiSelectMulti
    ListBox1.ListStyle = fmListStyleOption
End Sub
Kusura bakma tekrardan rahatsız ediyorum bu kodda şu kısım debug hatası veriyor
ListBox1.RowSource = ComboBox1.Text & "!A11:K" & Son
ben satırları 11 e taşıdım 11 yapmama rağmen comboboxdan seçim yapınca hata alıyorum


If ComboBox1.ListIndex = -1 Then Exit Sub
Son = Worksheets(ComboBox1.Text).Range("A65536").End(xlUp).Row
ListBox1.ColumnCount = 11
ListBox1.ColumnWidths = "45;50;65;50;45;50;45;45;50;50;45"
ListBox1.RowSource = ComboBox1.Text & "!A11:K" & Son
ListBox1.MultiSelect = fmMultiSelectMulti
ListBox1.ListStyle = fmListStyleOption
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
Hata oluştuğunda Son değişkeni hangi değeri almış?
 
Katılım
12 Mart 2021
Mesajlar
26
Excel Vers. ve Dili
2016
Altın Üyelik Bitiş Tarihi
04-04-2022
Private Sub ComboBox1_Change()

If ComboBox1.ListIndex = -1 Then Exit Sub
Son = Worksheets(ComboBox1.Text).Range("A65536").End(xlUp).Row
ListBox1.ColumnCount = 11
ListBox1.ColumnWidths = "45;50;65;50;45;50;45;45;50;50;45"
ListBox1.RowSource = ComboBox1.Text & "!A11:K" & Son
ListBox1.MultiSelect = fmMultiSelectMulti
ListBox1.ListStyle = fmListStyleOption


End Sub

bu şekilde dosyayı nasıl yükleyeceğimi tarif ederseniz dosyayı ekleyeyim buraya.
 
Üst