Skip to main content

AccessTr.neT


Çoklu Kritere Göre Form Filtrede Hata

Çoklu Kritere Göre Form Filtrede Hata

Çözüldü #1
merhaba arkadaşlar, iki kritere göre filtre yapıyorum; and ile birleştiriyorum tür uyuşmazlığı hatası veriyor, ayrı ayrı sırayla yapıyorum bu defa da "ve " bağlamında olmuyor hangisi işine geliyorsa onu filtreliyor, oysa ben iki kritere göre form filtresi uygulamak istiyorum bi yardımcı olabilir misiniz?

Me.surecAltForm.Form.Filter = " siniflar.sinifAdi='" & Me.acilan.Column(1) & "'" And Me.surecAltForm.Form.Filter = "surec.İslemTarihi Between #" & Format(Me.tarih1, "mm\/dd\/yyyy") & "# And #" & Format(Me.tarih2, "mm\/dd\/yyyy") & "#"

bu şekilde yapınca tür uyşmazlığı hatası veriyor, aradaki And i kaldırıyorum bu defa da iki kriterli olmuyor

not: "filtre adlı butondaki olaylar"
.rar genelButce27.rar (Dosya Boyutu: 228,91 KB | İndirme Sayısı: 7)
Cevapla
#2
siz 2 defa form filter olayını kullanmışsınız oysa 1 defa kullanılmalı gerisi normal sorgu kodu olmalı
Me.surecAltForm.Form.Filter = " siniflar.sinifAdi='" & Me.acilan.Column(1) & "' And surec.İslemTarihi  Between #" & Format(Me.tarih1, "mm\/dd\/yyyy") & "# And #" & Format(Me.tarih2, "mm\/dd\/yyyy") & "#"
Cevapla
#3
çok teşekkür ederim sayın berduş, ben de bu arada boş durmadım araştırmalara devam ederek nerde hata yaptığımı buldum, çok teşekkür ederim sağolun var olun. bendeki hata , And ile birleştirdim ama "&" And "&" ile birleştirmeliymişim.

If Not IsNull(Me.acilan) And Not IsNull(Me.tarih2) Then
Dim a As String

a = "siniflar.sinifAdi='" & Me.acilan.Column(1) & "'" & " And " & "surec.islemTarihi Between #" & Format(Me.tarih1, "mm\/dd\/yyyy") & "# And #" & Format(Me.tarih2, "mm\/dd\/yyyy") & "#"

Me.surecAltForm.Form.Filter = a





Me.surecAltForm.Form.FilterOn = True

Else
End If
Cevapla
#4
iyi çalışmalar
Cevapla
#5
(15/04/2022, 14:22)berduş yazdı: iyi çalışmalar
ya sayın hocalarım, sabah çalışan kodum şimdi tür uyuşmazlığı hatası veriyor, bir de böyle aralara and koymak opsiyonel yapar mı değişkenleri, yani ben istediğim alanı seçip filtreleyeyim, seçim bana bağlı olsun, araya da and koydum ama bilemedim,

If Not IsNull(Me.acilan) Or Not IsNull(Me.tarih1) Or Not IsNull(Me.tarih2) Or Not IsNull(Me.acilanIsinTuru) Or Not IsNull(Me.depo) Or Not IsNull(Me.acilanFirmaNo) Then

Dim a As String
a = "siniflar.sinifAdi='" & Me.acilan.Column(1) & "' & " And " & surec.islemTarihi Between #" & Format(Me.tarih1, "mm\/dd\/yyyy") & "#" And "#" & Format(Me.tarih2, "mm\/dd\/yyyy") & "# & " And " & isinTuru.isinTuru='" & Me.acilanIsinTuru.Column(1) & "' & " And " & depo.depo='" & Me.depo & "'"





Me.surecAltForm.Form.Filter = a




Me.surecAltForm.Form.FilterOn = True

Else
End If
Cevapla
#6
temel mantık aşağıdaki gibi olursa sorun olmaz bence siz kendi metin kutularınızı ve alan adlarınızı kullanmalısınız
StrFiltre = ""
If Len(Me.Metin10 & "") > 0 Then StrFiltre = " and [BasTrh]>=" & CLng(Me.Metin10)
If Len(Me.Metin12 & "") > 0 Then StrFiltre = StrFiltre & " and [BasTrh]<=" & CLng(Me.Metin12)
StrFiltre = Mid(StrFiltre, 6)
Me.surecAltForm.Form.Filter = StrFiltre
Me.surecAltForm.Form.FilterOn = True = True
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da