[VBA] çoklu If Kullanımı Yerine Alternatif Ne Kullanabilirim?
#1
Merhaba Arkadaşlar. Aşağıda örneğini verdiğim çoklu if kullanımını yerine alternatif olarak ne kullanabilirim?

Açılır Liste Kutusundan AY seçilince seçilen Ay'ın 1. gününün ismi "tarih1" alanına, 2. gününün ismi "tarih2" alanına .... bu şekilde 31 alana günlerin ismini yazdırıyorum. Her gün için de bir ONAY KUTUSU var. 1. Gün için "guncelle1", 2. gün için "guncelle2" ... bu şekilde 31 adet de onay kutusu var. 

Yapmak istediğim açılır liste kutusundan ay seçtiğimde, seçtiğim ay'ın hafta sonuna (Cumartesi ve Pazar gününe) denk gelen günlerinin "guncelle" onay kutusu işaretsiz olsun, diğerleri işaretli olsun. Aşağıda yazdığım 31 adet if blokları ile bunu sağlıyorum. ancak eminim daha pratik bir yolu vardır. 

Yardımlarınızı bekliyorum. Şimdiden teşekkürler.

Visual Basic
  1. 'AÇILIR LİSTE KUTUSU GÜNCELLEME SONRASI OLAYI
  2.  
  3. if me.tarih1="Cumartesi" Or me.tarih1="Pazar" then
  4. me.guncelle1=0
  5. else
  6. me.guncelle1=-1
  7. end if
  8.  
  9. if me.tarih2="Cumartesi" Or me.tarih2="Pazar" then
  10. me.guncelle2=0
  11. else
  12. me.guncelle2=-1
  13. end if
  14.  
  15. if me.tarih3="Cumartesi" Or me.tarih3="Pazar" then
  16. me.guncelle3=0
  17. else
  18. me.guncelle3=-1
  19. end if
  20.  
  21. if me.tarih4="Cumartesi" Or me.tarih4="Pazar" then
  22. me.guncelle4=0
  23. else
  24. me.guncelle4=-1
  25. end if
  26.  
  27. .......
  28. .......
  29. .......
  30. .......
  31.  
  32.  
  33. if me.tarih31="Cumartesi" Or me.tarih31="Pazar" then
  34. me.guncelle31=0
  35. else
  36. me.guncelle31=-1
  37. end if





  Alıntı
Bu mesajı beğenenler:
#2
AcilanKutu.rowsource = 1;"Ocak";2;"Şubat";3;"Mart";4;"Nisan";5;"Mayıs";6;"Haziran";7;"Temmuz";
8;"Ağustos";9;"Eylül";10;"Ekim";11;"Kasım";12;"Aralık"

AcilanKutu.rowsourcetype=value list
olmali...

Visual Basic
  1. Private Sub AcilanKutu_AfterUpdate()
  2. Dim Sayac As Long, Trh As Date
  3. For Trh = DateSerial(Year(Date), Me.AcilanKutu, 1) To DateSerial(Year(Date), Me.AcilanKutu + 1, 0)
  4.    Me.Controls("tarih" & Format(Trh, "d")) = Trh
  5.    Me.Controls("guncelle" & Format(Trh, "d")) = IIf(Eval(Weekday(Trh, vbMonday) & " IN(6, 7)"), 0, -1)
  6. Next Trh
  7. End Sub





  Alıntı
Bu mesajı beğenenler: dormin , onur_can
#3
Sayın dsezgin hocam ilginize teşekkür ederim. Yazdığınız kod istediğimi tam olarak yerine getirdi.



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  çoklu Seçinle Kayıt Girme? kesoka 1 319 02-07-2025, 23:31
Son Mesaj: dsezgin
  [FORM] Rakam Yerine Metisel Gösterim Access Ziyaretçisi 5 358 25-02-2025, 19:28
Son Mesaj: halily
access-sql-20 [TABLO] Liste Kutusu-çoklu Seçim özellikli Alana Excelden Verileri Yapıştırma mkoblayek 18 1.057 18-02-2025, 08:49
Son Mesaj: mkoblayek
  çoklu Kullanıcılarda Mükerrer Evrak Numarası (transaction) kaburkan 4 426 09-01-2025, 13:26
Son Mesaj: celalll
  Liste Kutusunda Il Ve Ilçe Isimleri Yerine Id Görünmesi MDİLBİRLİĞİ 3 475 22-06-2024, 21:15
Son Mesaj: dsezgin
  Dsum Ve Dcount Fonksiyonlarının Birlikte Kullanımı evren89 1 372 16-05-2024, 10:37
Son Mesaj: dsezgin
  Dcount Kullanımı. Satir 22 1.571 15-03-2024, 17:09
Son Mesaj: Satir
  Access Projesi Için Onedrive Kullanımı ccollezium 2 414 14-02-2024, 16:53
Son Mesaj: ccollezium

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi