Veri tabanından Listbox(column) nasıl veri listelerim?

Katılım
13 Haziran 2006
Mesajlar
374
Excel Vers. ve Dili
Excel 2003 Türkçe
Matematik Öğretmeni VB,Excel-VBA,...
Arkadaşlar sorunun buraya tam olarak uygun olmayacağını düşünebilirsiniz.VB 6 da oluşturduğum bir Form üzerindeki listboxa(3 column'a ayrılmış) adoc ile access veri tabanındaki bir tablonun üç sütununu sırasıyla her column'a gelecek şekilde sıralatmak istiyorum.Fakat bir çok deneme sonrasında listeleme olayı sadece 1.column'a geliyor.Bu konuda yardımınızı bekliyorum.
Kod:
Sub DersHavuzuAc() 'Sınıf Dersleri Dosyalarına Bağlanıyor.
On Error Resume Next
Dim mySQL, SSQL As String
mySQL = "SELECT DERS_HAVUZU.DERS_KODU,DERS_HAVUZU.DERS_ADI,DERS_HAVUZU.DERS_SAATİ from DERS_HAVUZU order by DERS_KODU"
Set sinifdersleri_list.DataSource = Nothing
With Dersler
        .ConnectionString = ADO_conn_str
        .UserName = ""
        .Password = ""
        .CommandType = adCmdUnknown
        .RecordSource = mySQL
        .Refresh
    End With

Dim X As Long, record_count As Long

Dersler.Recordset.MoveLast
X = Dersler.Recordset.RecordCount
Dersler.Recordset.MoveFirst
Do
    sinifdersleri_list.AddItem Dersler.Recordset(0)
    'sinifdersleri_list.AddItem Dersler.Recordset(1)
    'sinifdersleri_list.AddItem Dersler.Recordset(2)
    Y = Y + 1
    Dersler.Recordset.MoveNext
Loop Until Y = X  ' X = Recordcount, yani son kayit
End Sub
 
Katılım
13 Haziran 2006
Mesajlar
374
Excel Vers. ve Dili
Excel 2003 Türkçe
Matematik Öğretmeni VB,Excel-VBA,...
Sorun çözülmüştür.
Kod:
  Private Const LB_SETTABSTOPS As Long = &H192&
  Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd&, _
                                                    ByVal wMsg&, ByVal wParam&, lParam As Any) As Long
Sub DersHavuzuAc() 'Sınıf Dersleri Dosyalarına Bağlanıyor.
On Error Resume Next
Dim mySQL, SSQL As String
mySQL = "SELECT DERS_HAVUZU.DERS_KODU,DERS_HAVUZU.DERS_ADI,DERS_HAVUZU.DERS_SAATİ from DERS_HAVUZU order by DERS_KODU"
Set dershavuzu_list.DataSource = Nothing
With Dersler
        .ConnectionString = ADO_conn_str
        .UserName = ""
        .Password = ""
        .CommandType = adCmdUnknown
        .RecordSource = mySQL
        .Refresh
    End With
  ReDim TabStops(1) As Long ' Tab 1 e göre pozisyon belirleme
  TabStops(0) = 30 ' İlk Tab pozisyonu
  TabStops(1) = 230     ' İkinci Tab pozisyonu
Call SendMessage(dershavuzu_list.hWnd, LB_SETTABSTOPS, 2&, TabStops(0))
Dim X As Long, record_count As Long
Dersler.Recordset.MoveLast
X = Dersler.Recordset.RecordCount
Dersler.Recordset.MoveFirst
  Do
   dershavuzu_list.AddItem Dersler.Recordset(0) & vbTab & Dersler.Recordset(1) & vbTab & Dersler.Recordset(2)
    Y = Y + 1
    Dersler.Recordset.MoveNext
Loop Until Y = X  ' X = Recordcount, yani son kayit
End Sub
İki kod arasındaki farklılıkları incelediğinizde listbox ı hiç columnlara ayırmadan kodlarla tab ekleme yöntemini kullanarak listbox ı istediğiniz kadar sütunlara ayırıp listeleme yaptırabilirsiniz.
 
Son düzenleme:
Üst