![]() |
iki tarih arası sorguda IIf kullanımı - Baskı Önizleme +- AccessTr.neT (https://accesstr.net) +-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html) +--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html) +--- Konu Başlığı: iki tarih arası sorguda IIf kullanımı (/konu-iki-tarih-arasi-sorguda-iif-kullanimi.html) |
iki tarih arası sorguda IIf kullanımı - firdevs - 14/05/2009 Sayın hocalarım Örnekteki deneme formunda, ilk tarih ve son tarih alanları var. iki tarih sorgusunda Between [Formlar]![deneme]![ilktarih] And [Formlar]![deneme]![sontarih] Ölçüt yazılı güzel, çalışıyor Ama ben istiyorum ki; bo alanlar boş olduğunda liistenin tamamını göstersin Ve ilk tarih dolu olduğunda o tarihten sonrasını Ve son tarih dolu olduğunda da o tarihten öncesini göstersin. IIf(([Tbl_FisKaydi].[Fis_Tarihi])=(IsNull([Formlar]![deneme]![ilktarih])) And ([Tbl_FisKaydi].[Fis_Tarihi])=(IsNull([Formlar]![deneme]![sontarih]));([Tbl_FisKaydi]![Fis_Tarihi]);(([Tbl_FisKaydi].[Fis_Tarihi]) Between [Formlar]![deneme]![ilktarih] And [Formlar]![deneme]![sontarih])) bu ölçütü yazdım. Ama IIf(ilk tarih dolu son tarih boş ise ; ilk tarihten sonrasını; IIf(son tarih dolu , ilk tarih boş ise ;son tarihden öncesini;IIf(her ikiside boş ise;tüm listeyi; değil ise ikitarih arasını göster))) demek istiyorum. Öncesi sonrası IIF leri bilemedim. ![]() Hoş bu ölçütte alanlar boş olduğunda listenin tamamını göstermiyor. Yanlışım nerede ? İlk trarihden sonrasını son tarihden öncesini nasıl ifare edebilirim? İlgilenebilirseniz çok sevinirim. (Örneği eklayamadim.Açılır pencere engellendi diyor ayarlarında kapalı değil ama açılır pencereye izin vermedi.) Çok basit bir örnekti sanırım sorunumu anlatabildim. Cvp: iki tarih arası sorguda IIf kullanımı - okileturc - 14/05/2009 Ben örneğinize çok fazla girmeden yöntem tavsiye etmek istiyorum. Uygulamalarımızın bir çok yerinde ( form, rapor, sorgu ) tarih aralığına ihtiyacımız oluyor. Ben varsayılan ilk tarihi kullanıcının ayarlardan girmesi yöntemini kullanıyorum ![]() varsayılan son tarih için ise Bugün + kaç yıl tercihini belirtmesini istiyorum Artık tarih aralığı gerektiren alanlara bu iki değeri varsayılan olarak getiriyorum Diğer bir yöntem ise görüntülenecek kayıtların tablosundan DMin ile ilk tarih değerini DMax ile son tarih değerini getirmek gayet pratik Tarih alanlarının boş ya da Null olması çok sağlıklı değil diye düşünüyorum. Form üzerindeki bu denetimlerin "dolu" olmasını koşullamanız ve yukarıdikelere benzer bir yöntem kullanmanız daha iyi olabilir Kolay gelsin Cvp: iki tarih arası sorguda IIf kullanımı - firdevs - 14/05/2009 Hocam İlgilendiğiniz için teşekkür ederim. Başta oldukça acemi olduğumu söylemek isterim. Sizin bahsettiğiniz resimde gösterdiğiniz ayarların yerini bile bulamadım. Varsayılan nereden ayarlanıyor? Ayrıca bu tarih değişken olmalı , istediğim zaman geçen yılın istediğim zaman geçen ayın verilerini almalıyım. Sonrada bunların toplamlarıı alarak karşılaştırmalarını yapmalıyım. Form üzerinden tarih girerek yapmak daha uygun geliyor ancak sizin tavsiyenizi de öğrenmek isterim belki burada belki de başka yerde işime yarar. Tekrar ilgilenirseniz sevinirim. Cvp: iki tarih arası sorguda IIf kullanımı - okileturc - 14/05/2009 Özür dilerim, elbette ben yanlış ya da eksik anlatmış olabilrim Benim bahsettiğim varsayılan tarih bilgilerinin yazılımcı tarafından oluşturulacak bir tablo üzerinde tutulmasına yönelikti. Access te böyle bir ayar maalesef yok. Şöyle yapalım, siz örneğinizi ekleyin onun üzerinde yardımcı olmaya çalışalım ( Ben karmaşık yapılı bir IIF sorusuyla karşılaşınca benzer düzeyde çözümlere yöneldim ) Kolay gelsin Cvp: iki tarih arası sorguda IIf kullanımı - firdevs - 14/05/2009 Hocam Allah'a şükür IIF lı sorguları kavradım. Ama çok yeniyim. Başka bilgisayara geçtim ve örneği gönderiyorum. Hocam >[Formlar]![deneme]![ilktarih] yazdığım hatlı bir ölçüt mü? Çalışıyor ama sonuç yok İlk tarih kutusuna girdiğim tarihden büyüğünü yada soh tarihe girdiğim tarihden küçüğünü sorgulamak istersem nasıl ifade etmeliyim? Cvp: iki tarih arası sorguda IIf kullanımı - okileturc - 14/05/2009 O zaman Between kullanmayın sorgu kriterine >Forms!Formadi!ILKTARIH And <Forms!Formadi!SONTARIH yazın ayni formülü >=Forms!Formadi!ILKTARIH And <=Forms!Formadi!SONTARIH şekinde yazarsanız zaten between ile ayni işi yapar Kolay gelsin Formunuzdaki IIF butonuna aşağıdaki kontrolü koydum Kod:
Private Sub ııf_Click() değerleri getirecek tarih alanlarının varsayıllan değerlerine de ayni işlemi yaptım sorgunuza da > And < kodunu yazdım bir inceleyin Kolay gelsin |