IF - THEN - ELSE Karar Yapısı

Katılım
18 Nisan 2007
Mesajlar
2,053
Excel Vers. ve Dili
Access 2019
GİRİŞ

Access ile hazırladığımız uygulamalarımızda yapmak istediklerimiz arttıkça artık menülerin, sihirbazların, makroların yetersiz kaldığını hissederiz.. Ama biz uygulamalarımızın daha özgün, esnek ve de kullanışlı olmasını istiyoruz.. Bu da demektir ki artık ufak ufak kod yazmayı öğrenmenin zamanı gelmiştir..





Merhaba arkadaşlar..

İf - Then - Else karar yapısı en sık kullandığımız yapılardan biridir.. Oldukça esnek ve kullanışlı olan bu yapıyı hazırlamak kolay ve keyiflidir..

Temel yapı bu şekilde..:



If Koşul Then
Koşul oluştuğunda yapılmasını istediğimiz işlemler..
Else
Koşul oluşmadığında yapılmasını istediğimiz işlemler..
End If



Formunuzun üzerine iki adet metin kutusu (metin1, metin2) ve bir komut düğmesi (komut1) yerleştirin..
Düğmenin tıklandığında olayına bu yapıyı kullanalım şimdi:


Kod:
If Metin1 = "elma" Then
Metin2 = "meyve"
End If


Formu şimdi açıp metin1 e elma yazın ve düğmeyi tıklayın..

Türkçe meali..:

Eğer metin1 de elma yazıyorsa metin2 ye meyve yaz..

Yapı yukarıdaki gibi tek şart ve tek sonuçtan oluşuyorsa işi End If kullanmadan tek satırla da bitirebiliriz..


Kod:
If Metin1 = "elma" Then Metin2 = "meyve"


Şimdi yapıya Else dahil edip kodumuzu geliştirelim..:

Yukarıdaki yapıda metin1 de elma harici bir eğer varsa metin2 de bir şey yazmaz.. Şimdi Else kullanarak istediğimiz şart oluşmadığında metin2 ye değer yazalım..:



Kod:
If Metin1 = "elma" Then
Metin2 = "meyve"
Else
Metin2 = "Türü belli değil.."
End If


Şimdi diğer bir aşama..: ElseIf


Kod:
If Metin1 = "elma" Then
Metin2 = "meyve"
ElseIf Metin1 = "ıspanak" Then
Metin2 = "sebze"
Else
Metin2 = "Türü belli değil.."
End If

Meali..:

Eğer metin1 de elma yazıyorsa metin2 ye "meyve" yaz. Yok eğer ıspanak yazıyorsa metin2 ye "sebze" yaz.. Bunlardan başka bir şey yazıyorsa "türü belli değil" yaz..

Koşulları arttırabiliriz..:

Formumuza bir metin kutusu (metin3) daha ilave edelim..


Kod:
If Metin1 = "elma" And Metin3 = "amasya" Then
Metin2 = "yerli meyve"
Else
Metin2 = "Türü belli değil.."
End If



Eğer metin1 de "elma" ve metin3 de "amasya" yazıyorsa metin2 de "yerli meyve" yaz.. Bu iki şart gerçekleşmiyorsa "Türü belli değil.." yaz.

Bu da Or operatörü ile kullanımı..:


Kod:
If Metin1 = "elma" Or Metin3 = "portakal" Then
Metin2 = "meyve"
Else
Metin2 = "Türü belli değil.."
End If



Eğer metin1 de "elma" ya da metin3 de "portakal" yazıyorsa metin2 de "meyve" yaz.. Bu iki şart gerçekleşmiyorsa "Türü belli değil.." yaz.



Bu yapı içerisinde bir çok karşılaştırma operatörünü kullanabiliriz..:


Kod:
If Metin1 <>   '..... Eşit değilse
If IsNull(Metin1) '..... Boşsa 
If Not IsNull(Metin1) '..... Boş değilse 
If Metin1 >   '..... Büyükse
If Metin1 >=   '..... Eşit ve Büyükse
If Metin1 <   '..... Küçükse
If Metin1 <=   '..... Eşit ve Küçükse


Yapı, temel olarak bu şekilde.. Daha da detaylandırıp kafa karıştımayalım.. Özümsedikten sonra kendiniz zaten daha da gelişmiş yapıları oluşturacaksınızdır..


Taruz... 2011
 
Katılım
7 Aralık 2013
Mesajlar
8
Excel Vers. ve Dili
2003
Türkçe
Sayın Taruz;

IF - THEN - ELSE Karar Yapısını tarih aralığı için nasıl kullanabilirim?

Örneğin; 21 Ekim (21.10) ile 21 Mart (21.03) arasında ise TextBox = "B" olsun
veya
21 Mart (21.03) ile 21 Ekim (21.10) arasında ise TextBox = "C" olsun

Şöyle bir şey denemeye çalıştım ama olmadı:
Dim ilk As Date, son As Date
ilk = DateValue("21.10")
son = DateValue("21.03")

If TextBox20.Value < ilk Or CDate(TextBox1.Value) > son Then
TextBox20.Value = "C"
ElseIf TextBox20.Value > ilk Or CDate(TextBox1.Value) < son Then
TextBox20.Value = "B"
End If

Yardımlarınız için şimdiden teşekkür ederim.
 
Üst