ListBox1 Select Olayı...Sorun...!

Katılım
4 Ekim 2004
Mesajlar
155
ListBox1 üzerinde birtakım bilgiler var.ListBox1.de Multiselect özelliğini kaldırdım. "2" yaptım.
ben bu bilgilerden istediğim satıra ile mouse ile tıklayınca Bilginin MsgBox taa karşıma cıkmasını istiyorum, Sorun nerede? kodları düzeltirmisiniz?

Private Sub ListBox1_Click()

For i = 1 To ListBox1.ListCount
If ListBox1.Selected(i) = True Then MsgBox ListBox1.List(i, 1) ' Burada i SATIR, 1 DE SÜTUN MU?
Next

End Sub
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki şekilde deneyin.

[vb:1:6081fbd063]Private Sub ListBox1_Click()
For i = 0 To ListBox1.ColumnCount - 1
say = ListBox1.List(ListBox1.ListIndex, i) & " " & say
Next
MsgBox say
End Sub[/vb:1:6081fbd063]

Burada i SATIR, 1 DE SÜTUN MU?
Evet
 
Katılım
4 Ekim 2004
Mesajlar
155
Levent Bey ilginiz için sağolun. benim aşağıdaki kodlarda çalıştı.Bir mantık hatası yok gibi geliyor bana.

For i = 0 To ListBox1.ColumnCount - 1
If ListBox1.Selected(i) = True Then

ComboBox6 = ListBox1.List(i, 1)
ComboBox5 = ListBox1.List(i, 0)
TextBox4 = ListBox1.List(i, 2)
TextBox15 = ListBox1.List(i, 10)
TextBox16 = ListBox1.List(i, 11)
End If
Next

PEKİ ListBOx1. deki 4 , 5 ve 6. sütünların görünmemesini istiyorum.yani bunların ColumnWidth ini Sıfır Yapcam.. TAM OLARAK onun kodu nedir?
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Bunun için kolon genişliklerini 0 (sıfır) yapmanız yeterlidir.

örneğin;

[vb:1:53419b5280]Private Sub UserForm_Initialize()
ListBox1.ColumnWidths = "24;45;67;0;0;0;67;"
End Sub
[/vb:1:53419b5280]
 
Katılım
4 Ekim 2004
Mesajlar
155
Cok sağolun. Son Sorum:

Ã?rneğin ListBox1 üzerindeki 8.kolondaki değer 0 ise o satırı göstermesin silsin....Bunu nasıl sağlarız_
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
For i = 0 To ListBox1.ColumnCount - 1
If ListBox1.Selected(i) = True Then

ComboBox6 = ListBox1.List(i, 1)
ComboBox5 = ListBox1.List(i, 0)
TextBox4 = ListBox1.List(i, 2)
TextBox15 = ListBox1.List(i, 10)
TextBox16 = ListBox1.List(i, 11)
End If
Next
Kodlarınızda mantık hatası var, Listbox.List(i,1) şeklinde yazarsanız satırı değişken yapmış olursunuz bu durumda

For i = 0 To ListBox1.ColumnCount - 1

satırının yerine

For i = 0 To ListBox1.ListCount - 1

şeklinde kullanın.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Ã?rneğin ListBox1 üzerindeki 8.kolondaki değer 0 ise o satırı göstermesin silsin....Bunu nasıl sağlarız_
Eğer listboxa verileri rowsource özelliği ile alıyorsanız, bu durumda listboxta bu istediğinizi yapamazsınız, ancak rowsource aralığında önce 8. kolonu sıfır olan verileri sayfa üzerinde sildirip sonra listboxa alabilirsiniz. Eğer additem özelliği ile verileri alsaydınız bu durumda 8. kolonu sıfır olan verileri pas geçebilirdiniz. Fakat additem özelliğinin bir dezavantajı; en fazla 10 kolona kadar veriyi listboxa alabiliyorsunuz.
 
Katılım
4 Ekim 2004
Mesajlar
155
MsgBox "Veriler başarıyla kayıt edildi", vbInformation, "Kayıt Edildi...": UserForm2.Hide: Worksheets("MENU").Select: Range("A1").Select: UserForm2.CommandButton2.Visible = False: Label5.Visible = False: ComboBox6.Visible = False: Label6.Visible = False: TextBox4.Visible = False: ListBox1.Clear: UserForm2.Show:

Visible Komutu Çalışıyor Ancak LİSTBOX1.CLEAR A GELINCE DURUYOR

Run Time ERROR
unspecified Error Diyor....ben sormadan size clear komutunu kullanmıştım ama bu hata mesajını oluyorum neden?
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Bunun sebebini yazdığınız kodlardan anlamak zor, öncelikle bu kodlar hangi nesneye bağlı, listbox1 userform1 demi 2 demi, gibi bir çok soru sorulabilir, en iyisi siz dosyanızı ekleyin onun üzerinden gidelim.
 
Katılım
4 Ekim 2004
Mesajlar
155
ListBox1.RowSource=""

komutu ile sorunum düzeldi...Yardımınız için teşekkürler
 
Üst