(18/12/2023, 16:20)berduş yazdı: sondaki And ler fazla gibi geldi
kusura bakmayın dikkatimden kaçmış
Me.Filter = Mid(Suz, 1, Len(Suz) - 4) kodu ile zaten sondaki
and siliniyormuş
eklediğiniz dosyayı inceledim kod sorusuz çalışıyor
Not: kodda tek sorun önce gereksiz yere
and ekleyip sonra da onu almamak için gereksiz işlem yapması
aslında aşağıdaki kod yeterliydi
Sub Suzgec2()
Dim Suz As String
DoCmd.RunCommand acCmdRemoveFilterSort
If InStr(1, Me.Metin5, "*") = 0 Then Suz = Suz & "[Eser Adı]='" & Me.Metin5 & "'" Else Suz = Suz & "[Eser Adı] Like '*" & Me.Metin5 & "*'"
Me.Filter = Suz
Me.FilterOn = True
End Sub
Not 2: yada çok daha basiti tek kodun kullanılması
mesela aşağıdaki kodu kullanırsanız
Sub Suzgec2()
Dim Suz As String
DoCmd.RunCommand acCmdRemoveFilterSort
Suz = "[Eser Adı] Like '*" & Me.Metin5 & "*'"
Me.Filter = Suz
Me.FilterOn = True
End Sub
"ahmet"'i arıyorsanız sadece
"ahmet"
"ah" ile
başlayanları aramak için
"*ah"
"ah" ile
bitenleri aramak için
"a*h"
"ah" içerenleri aramak için
"*ah*"
gibi yaparsanız çok daha esnek olur