Dim Kriter As String
Adodc4.Refresh
If Kriter = "" Then
Kriter = "Tarih >= '" & CDate(ilktarih.Value) & "' and Tarih <= '" & CDate(sontarih.Value) & "'"
Else
Kriter = Kriter & " And Tarih >= '" & CDate(ilktarih.Value) & "' and Tarih <= '" & CDate(sontarih.Value) & " 'and VSFlexGrid11.TextMatrix(0, 20)= '" & (Combo11.Text) & "'"
End If
With Adodc4.Recordset
.Filter = Kriter
If .RecordCount > 0 Then .Update
End With
Set VSFlexGrid11.DataSource = Adodc4
Call Kolonlari_Ayarla(VSFlexGrid11)
Bu iki tarih arasında listeliyor 3. bir kriter eklemek istersem ne yapmam lazım ?
VBA tagları arasında yazınca ne kadar rahat okunur oldu
Bir kriter daha eklemek istiyorsunuz. Bu kriteri Else If olarak mı yoksa
Sql kodu olarakmı soruyorsunuz?
Sn:sedat76
Örneği aldığınız yerde sadece bir kritere göre listeleme yapmaktadır.Yani sadece iki tarih arasınını listeler.Eğer çoklu kriter eklemeniz gerekirse İf / Else arasına istediğiniz kadar kriter belirliyebilirsiniz.Aşağıdaki Kodları inceleyip kendinize göre uyarlarsınız.
Dim Kriter As String
Adodc1.Refresh
'Birinci Kriter Adı ve Soyadına göre arama yapar.
If Kriter = "" Then
Kriter = "Adi_Soyadi='" & txtadisoyadi.Text & "'"
Else
Kriter = Kriter & " And Adi_Soyadi='" & txtadisoyadi.Text & "'"
End If
End If
'İkinci Kriter Tc Kimlik Nosuna göre arama yapar.
If txtkimlikno.Text <> "" Then
If Kriter = "" Then
Kriter = "Tc_Kimlik_No='" & txtkimlikno.Text & "'"
Else
Kriter = Kriter & " And Tc_Kimlik_No='" & txtkimlikno.Text & "'"
End If
End If
'Üçüncü Kriter Bulunduğu Şehire göre arama yapar.
If txtsehir.Text <> "" Then
If Kriter = "" Then
Kriter = "Sehir='" & txtsehir.Text & "'"
Else
Kriter = Kriter & " And Sehir='" & txtsehir.Text & "'"
End If
End If
With Adodc1.Recordset
.Filter = Kriter
If .RecordCount > 0 Then .Update
End With
Set VSFlexGrid1.DataSource = Adodc1
Public Function Suz()
[TC_KIMLIK_NO] like '" & TxtKimlik.Text & "%' and [EGITIM_YILI] like '" & TxtYil.Text & "%' and [DONEM] like '" & TxtDonem.Text & "%' and [SINIF] like '" & TxtSinif.Text & "%'"
If LblSorgu.Caption = "Kursiyer" Then
Call Kursiyer
AdodcKursiyer.RecordSource = "Select * From TBL_KIMLIK where [ADI] like '" & TxtAd.Text & "%' and [SOYADI] like '" & TxtSoyad.Text & "%' and [TC_KIMLIK_NO] like '" & TxtKimlik.Text & "%'"
AdodcKursiyer.Refresh
ElseIf LblSorgu.Caption = "Egitimci" Then
Call Egitimci
AdodcEgitimci.RecordSource = "Select * From TBL_KIMLIK where [ADI] like '" & TxtAd.Text & "%' and [SOYADI] like '" & TxtSoyad.Text & "%' and [TC_KIMLIK_NO] like '" & TxtKimlik.Text & "%'"
AdodcEgitimci.Refresh
ElseIf LblSorgu.Caption = "Yonetici" Then
Call Kursiyer
AdodcKursiyer.RecordSource = "Select * From TBL_KIMLIK where [ADI] like '" & TxtAd.Text & "%' and [SOYADI] like '" & TxtSoyad.Text & "%' and [TC_KIMLIK_NO] like '" & TxtKimlik.Text & "%' and [EGITIM_YILI] like '" & TxtYil.Text & "%' and [DONEM] like '" & TxtDonem.Text & "%' and [SINIF] like '" & TxtSinif.Text & "%' and [EGITIM_TURU] like '" & TxtEgitimturu.Text & "%'"
AdodcKursiyer.Refresh
ElseIf LblSorgu.Caption = "Ders" Then
Call Ders
AdodcDers.RecordSource = "Select * From TBL_DERS where [ADI] like '" & TxtAd.Text & "%' and [SOYADI] like '" & TxtSoyad.Text & "%' and [TC_KIMLIK_NO] like '" & TxtKimlik.Text & "%'"
AdodcDers.Refresh
End If
End Function
Vaov teşekkürler bunu hiç düşünememiştim :/