ADODB.Recordset ten ComboBox85 ve ListBox1 e uyana benzersiz kayıtlar

Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Kod:
Private Sub ListBox1_Change()
On Error Resume Next
Call DegiskenTani
Dim i As Integer, SQLStr As String
If ListBox1.Value = "" Then Exit Sub
Dim RecOzlk As ADODB.Recordset:      Set RecOzlk = New ADODB.Recordset
    ListBox2.Clear
    basliklar = "TCK_NO, ISY_NO, PERS_NO"
    sayfaadi = "[OZLUK$]"
    sorgu = "TCK_NO = " & ComboBox85.Value [color="red"]'& _
            "AND ISY_NO=" & ListBox1.Value[/color]
    SQLStr = "SELECT DISTINCT " & basliklar & " FROM " & sayfaadi & " WHERE " & sorgu
    With RecOzlk
        .Open SQLStr, bagOZLK, adOpenKeyset, adLockOptimistic
        .MoveFirst
        If .RecordCount = 0 Then
            MsgBox ComboBox85.Value & " kimlik numaralı kişinin özlük kaydı bulunamadı"
        Else
           For i = 1 To .RecordCount
                ListBox2.AddItem .Fields("PERS_NO")
               .MoveNext
            Next i
        .MoveFirst ':        ListBox2.ListIndex = 0
        If CBool(.State And adStateOpen) = True Then .Close
        End If
    End With
Set RecOzlk = Nothing
End Sub
yuakarıdaki kodlar (ile kırmızı satır hariç) combobox85 (tcno) değerine göre recordsetten benzersiz sicil noları geliyor

ama ben tcnosu ve isyeri nosuna göre listbox2 ye personel nosu gelsin istiyorum
recordsette
TCK_NO, ISY_NO, PERS_NO
152, 1, 1001
152, 2, 2001
152, 1, 1010

durumunda
listbox2 de 1001 ve 1010 değerleri gözükmesi için ne değişklik yapmalıyım
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
arkadaşlar üzerinde çalıştığım projede gördüğüm kadarı ile bir bu eksik kaldı
yardımlarınızı bekliyorum
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
yukarıdaki kodlarda hatta neredeki ekleyemiyorum
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,369
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
Aşağıdaki değişiklikleri yaparak deneyin.
Kod:
sorgu = "TCK_NO = " & ComboBox85.Value [COLOR=black]&[/COLOR][COLOR=black] _[/COLOR]
[COLOR=black]          [COLOR=black]"[/COLOR][B] AND[/B] ISY_NO=" & ListBox1.Value[/COLOR]
Kod:
For i = 1 To .RecordCount
       ListBox2.AddItem
       ListBox2.List(ListBox2.ListCount - 1, 0) = .Fields("TCK_NO")
       ListBox2.List(ListBox2.ListCount - 1, 1) = .Fields("ISY_NO")
       ListBox2.List(ListBox2.ListCount - 1, 2) = .Fields("PERS_NO")
      .MoveNext
Next i
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
teşekkür ederim hocam ilk kodlarda
"AND" den önce boşluk vermediğim için problem yaşanıyormuş demek ama bu şekilde daha hoş oldu.
emeğiniza sağlık
bir sorum daha var
listbox 0 kolonununun görüntüsü aşağıdaki gibi;
2003 ad soyad
2038 ad soyad
2025 ad soyad

bunu
2038 ad soyad
2025 ad soyad
2003 ad soyad

şekline getirmek mümkünmüdür.
 
Üst