Skip to main content

AccessTr.neT


Formda Filtreleme

Formda Filtreleme

#1
iyi geceler

ekte ki çalışmamda form üzerinde filtreleme yapmaktayım. Bit_Tarihi güncelleme sonrası olayına Me.Filter = "[Giris_Tarihi] <= #" & Month(Me.Bit_Tarihi) & "/" & Day(Me.Bit_Tarihi) & "/" & Year(Me.Bit_Tarihi) & "# and [Cikis_Tarihi] >=#" & Month(Me.Bas_Tarihi) & "/" & Day(Me.Bas_Tarihi) & "/" & Year(Me.Bas_Tarihi)"# or [Cikis_Tarihi] ="")
Me.FilterOn = True

diye kod girdim.

yapmak istediğim şu Giris_Tarihi Bit_Tarihinden küçük veya eşitse Cikis_Tarihi Bas_Tarihinden büyük veya eşit veya boş sa diye koşullu filtremeye yapmaya çalışıyorum

yardımlarınız tesekkurler
.zip Yeni WinRAR ZIP arşivi.zip (Dosya Boyutu: 27,74 KB | İndirme Sayısı: 2)
Cevapla
#2
iyi geceler,
bu gibi koşullu durumlarda iif karşılaştırma komutunu kullanabilirsiniz, ya da if ... then... else veyahut da select case ... end select gibi komutlarıda kullanabilirsiniz.
durumunuza şu anda en uygunu iç içe IIF komutunu kullanmaktır. IIF komutunun söz dizimi aşağıdaki gibidir.
Kod:
iif ("ifade";"ifade doğru olduğunda yapılacak eylem";"ifade yanlış olduğunda yapılacak eylem")
şeklindedir. Buna göre
Kod:
= iif([Giriş Tarihi]>=[Bitiş Tarihi];"Yapılacak Eylem";"Yapılacak Eylem")
= iif([Giriş Tarihi]>=[Bitiş Tarihi];iif([Çıkış Tarihi]>=[Başlama Tarihi];Yapılacak Eylem");"Yapılacak Eylem")

 İyi olan tek şey bilgi ve kötü olan tek şey de cehalettir. (Sokrates)
Cevapla
#3
Hocam Me.Filter = "IIf([Giris_Tarihi] <= #" & [Bit_Tarihi] & "# and IIf([Cikis_Tarihi] >=#" & [Bas_Tarihi] & "#"
şöyle denedim ama yapamadım siz bana uygulamalı olarak gösterir misiniz.
Cevapla
#4
Merhaba,
Yapmak istediğinizi biraz daha netleştirelim.
Öncelikle şartımız nedir? şartımız birden fazla mıdır?
Şartlarımızı ayrı ayrı bir yazalım, Daha sonra Örneğin, 1.Şartımız doğru olduğunda Ne olacak?, Yanlış olduğunda ne olacak?
Aynı şekilde 2. Şartımız doğru olduğunda ne olacak?, Yanlış olduğunda ne olacak?, 2 şartımızın da doğru olmadığında ne olacak?
Yukarıda vermiş olduğunuz ifade eksik kalmış? Bu şekilde metinsel olarak yazarsanız ifademizi oluşturup daha hızlı sonuca ulaşabiliriz.
 İyi olan tek şey bilgi ve kötü olan tek şey de cehalettir. (Sokrates)
Cevapla
#5
Me.Filter = "[Giris_Tarihi] <= #" & Month(Me.Bit_Tarihi) & "/" & Day(Me.Bit_Tarihi) & "/" & Year(Me.Bit_Tarihi) & "# and [Cikis_Tarihi] >="" #" & Month(Me.Bas_Tarihi) & "/" & Day(Me.Bas_Tarihi) & "/" & Year(Me.Bas_Tarihi) & "#"
Me.FilterOn = True

hocam tam yapmak istediğim bu aslında yani çıkış tarihi bas_tarihinden büyüktür ya da eşitse ya da içi boşsa diye yapmak istiyorum
Son Düzenleme: 11/06/2024, 10:06, Düzenleyen: evren89.
Cevapla
#6
Kod:
=IIf([çıkıştarihiTarihi]>=[başlamatarihi];IIf(IsNull([başlamatarihi];IIf(IsNull([çıkıştarihi]);.......)))
 İyi olan tek şey bilgi ve kötü olan tek şey de cehalettir. (Sokrates)
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task