Konunun çözümü aşağıdaki gibidir.
Aşağıda görseli bulunan database de görüldüğü gibi müşteri adı bulumuyor.
[img][/img]
Dolayısı ile userformda doğrudan müşteri adına göre arama yapamıyoruz. Bu durumda cari adına ulaşabileceğimiz bir tablo lazım.Bu tablo cari sabit bilgilerinin bulunduğu tablo olabilir,
Şimdi yapılması gereken veritabanında CariSabit tablosu ile Siparişler tablosunu her iki tabloda aynı olan Cari kodu alanı ile birleştirip, buna göre sorgu yazmak,
Hangi textboxta arama yapılacaksa o textbox'ın change olayına ;
Kod:
Set baglan = CreateObject("adodb.connection")
Set rs = CreateObject("adodb.recordset")
baglan.Open "provider=Microsoft.ACE.OLEDB.12.0;data source=" & ThisWorkbook.Path & "\Database\veritabani.accdb"
rs.Open "SELECT * FROM SiparisKayitlari as s INNER JOIN carikart as c ON c.CARIKOD = s.Cari_Kod WHERE c.CARIADI Like '" & TextBox2.Text & "%'", baglan, 1, 1
With ListView1
.ListItems.Clear
If rs.RecordCount > 0 Then
Do While Not rs.EOF
.ListItems.Add , , rs(1).Value & ""
For i = 2 To rs.Fields.Count - 1
.ListItems(.ListItems.Count).ListSubItems.Add , , rs(i).Value & ""
Next i
rs.MoveNext
Loop
End If
End With
Set rs = Nothing
Set con = Nothing
Umarım açıklayıcı olmuştur.
Özel bilgiler içerdiğinden dosya paylaşımı maalesef yapamıyorum.