VB'de if-then-else, select-case Evet bu yazıda if then ve else'nin kullanımlarının yanı sıra select case komutunun kullanımını anlatacağım.Bunların hepsi kontrol komutları başlığı altında toplanabilirdi ama ben bu komutları döngülerden ayrı bir şekilde anlatmak istedim,bundan sonraki ders ise döngüler olacak.
if-then-else
if koşul then KOMUTU
Belirtilen koşulun olması hainde programa yaptırmak istediğimiz şeyleri yaptırmaya yardımcı koddur. kullanımı;
if koşul then
KOMUTLAR
end if
Şeklindedir.Yani belirttiğimiz koşul sağlanırsa program, if ile end if arasında belirttiğimiz komutları uyguluyacaktır.Eğer belirttiğimiz koşul sağlanmamışsa program direk -end if- komutunun 1 alt satırına atlayacaktır.Yani if ve end if komutları arasındaki hiç bir işlemi yapmayacaktır.
Örnek:
Standart.exe olarak açmış olduğunuz formunuza bir textbox (text1) ve bir commandbutton (command1) ekleyiniz.Sonra tasarım penceresindeyken command buttona çift tıklayarak açılan kod penceresine aşağıdaki kodlarıyazınız.Daha sonra F-5'e basarak programı çalıştırınız.Program sayınızın tek mi çift mi olduğunu kontrol ediyor ve ona göre mesaj veriyor.
Private Sub Command1_Click()
a = Text1.Text
a = Val(a)
If a Mod (2) = 0 Then
MsgBox "girdiğiniz sayı çifttir"
End If
If a Mod (2) <> 0 Then
MsgBox "girdiğiniz sayı tektir"
End If
End Sub
if koşul then.... else...KOMUTU
If ... end if 'ten tek farki vardır,koşulun sağlanmadığı durumda da programa mudahale edebilirsiniz.Örneğin belirttiğiniz koşulun olup olmadığını if ile kontrol ediyordunuz,şimdi burada da else diyerek,programa; koşulun olmadığı durumda da şunu yap diye emir veriyorsunuz.Kullanımı şu şekildedir:
if koşul Then
KOMUTLAR
else
KOMUTLAR
End if
Daha önce de dediğim gibi,eğer belirttiğiniz koşul varsa if'in altındaki komutlar yerine getiriliyor,eğer belirttiğiniz koşullar yoksa else nin altındaki komutlar yerine getiriliyor.
Örnek: Yukarıda 2 tane if komutu kullanarak yazdığımız komutu daha kısa satırda else kullanarak yazacak olursak;
Private Sub Command1_Click()
a = Text1.Text
a = Val(a)
If a Mod (2) = 0 Then
MsgBox "girdiğiniz sayı çifttir"
Else
MsgBox "girdiğiniz sayı tektir"
End If
End Sub
If koşul then..... ElseIf koşul then.....KOMUTU
Birden fazla koşulumuzun olduğu durumlarda defalarca if kullanmaktansa if ve else if lerle durumu bağlayabiliriz.Belki programı daha az satırda yazma adına çok şey yapmış olmayız ama programı yazmada hakimiyeti kaybetmeyiz,programı takip etmek daha kolay olur...
If koşul Then
KOMUTLAR
ElseIf Koşul1 Then
KOMUTLAR
ElseIf Koşul2 Then
KOMUTLAR
End If
Örnek: Şimdiki örnekte 1'den 5 e kadar olan sayıların kontrolünü yapan,girdiğiniz sayının kaç olduğunu size söyleyen ve 5 ten büyük bir sayı girmişseniz uyaran 1 program yazıyoruz.Formunuza bir textbox ve bir command buton ekleyin ve tasarım aşamasındayken command butona cift tıklayıp açılan pencerede bu kodu yazın..
Private Sub Command1_Click()
a = Text1.Text
a = Val(a)
If a > 5 Then
MsgBox "5'ten büyük sayı giremezsiniz"
End If
If a = 1 Then
MsgBox "Girdiğiniz sayı=1"
ElseIf a = 2 Then
MsgBox "Girdiğiniz sayı=2"
ElseIf a = 3 Then
MsgBox "Girdiğiniz sayı=3"
ElseIf a = 4 Then
MsgBox "Girdiğiniz sayı=4"
ElseIf a = 5 Then
MsgBox "Girdiğiniz sayı=5"
End If
End Sub
Select .... Case
Mantık olarak yukarıda anlattığımız If..ElseIf yapısının aynısıdır.Mevzu bahsi olan değişken Select Case DEGİŞKEN komutuyla seçilir ve bu değişkenin birden fazla durumları Case Deger1... Case Değer2.... komutlarıyla kontrol edilir.Kullanımı;
Select Case Değişken
Case Değer1
.....
Case Değer2
.....
Case Değer3 to Değer 10
.....
Case Else
End Select
Gördüğünüz gibi 1 den fazla koşullu durumda select case yi kullandık.Case deger 3 to deger 10 yazan satır dikkatinizi çekmiştir sanırım.Değişkenin değerinin belli bir şeyden diğer şeye kadar olan durumda şunu şunu yap anlamına gelir.Dikkat edilmesi gereken diğer komut da Case Else.Bu da belirtilen tüm seçeneklerin dışında başka 1 değer olması durumunda altında belirtilen koomutları uygulatır.
if-then-else
if koşul then KOMUTU
Belirtilen koşulun olması hainde programa yaptırmak istediğimiz şeyleri yaptırmaya yardımcı koddur. kullanımı;
if koşul then
KOMUTLAR
end if
Şeklindedir.Yani belirttiğimiz koşul sağlanırsa program, if ile end if arasında belirttiğimiz komutları uyguluyacaktır.Eğer belirttiğimiz koşul sağlanmamışsa program direk -end if- komutunun 1 alt satırına atlayacaktır.Yani if ve end if komutları arasındaki hiç bir işlemi yapmayacaktır.
Örnek:
Standart.exe olarak açmış olduğunuz formunuza bir textbox (text1) ve bir commandbutton (command1) ekleyiniz.Sonra tasarım penceresindeyken command buttona çift tıklayarak açılan kod penceresine aşağıdaki kodlarıyazınız.Daha sonra F-5'e basarak programı çalıştırınız.Program sayınızın tek mi çift mi olduğunu kontrol ediyor ve ona göre mesaj veriyor.
Private Sub Command1_Click()
a = Text1.Text
a = Val(a)
If a Mod (2) = 0 Then
MsgBox "girdiğiniz sayı çifttir"
End If
If a Mod (2) <> 0 Then
MsgBox "girdiğiniz sayı tektir"
End If
End Sub
if koşul then.... else...KOMUTU
If ... end if 'ten tek farki vardır,koşulun sağlanmadığı durumda da programa mudahale edebilirsiniz.Örneğin belirttiğiniz koşulun olup olmadığını if ile kontrol ediyordunuz,şimdi burada da else diyerek,programa; koşulun olmadığı durumda da şunu yap diye emir veriyorsunuz.Kullanımı şu şekildedir:
if koşul Then
KOMUTLAR
else
KOMUTLAR
End if
Daha önce de dediğim gibi,eğer belirttiğiniz koşul varsa if'in altındaki komutlar yerine getiriliyor,eğer belirttiğiniz koşullar yoksa else nin altındaki komutlar yerine getiriliyor.
Örnek: Yukarıda 2 tane if komutu kullanarak yazdığımız komutu daha kısa satırda else kullanarak yazacak olursak;
Private Sub Command1_Click()
a = Text1.Text
a = Val(a)
If a Mod (2) = 0 Then
MsgBox "girdiğiniz sayı çifttir"
Else
MsgBox "girdiğiniz sayı tektir"
End If
End Sub
If koşul then..... ElseIf koşul then.....KOMUTU
Birden fazla koşulumuzun olduğu durumlarda defalarca if kullanmaktansa if ve else if lerle durumu bağlayabiliriz.Belki programı daha az satırda yazma adına çok şey yapmış olmayız ama programı yazmada hakimiyeti kaybetmeyiz,programı takip etmek daha kolay olur...
If koşul Then
KOMUTLAR
ElseIf Koşul1 Then
KOMUTLAR
ElseIf Koşul2 Then
KOMUTLAR
End If
Örnek: Şimdiki örnekte 1'den 5 e kadar olan sayıların kontrolünü yapan,girdiğiniz sayının kaç olduğunu size söyleyen ve 5 ten büyük bir sayı girmişseniz uyaran 1 program yazıyoruz.Formunuza bir textbox ve bir command buton ekleyin ve tasarım aşamasındayken command butona cift tıklayıp açılan pencerede bu kodu yazın..
Private Sub Command1_Click()
a = Text1.Text
a = Val(a)
If a > 5 Then
MsgBox "5'ten büyük sayı giremezsiniz"
End If
If a = 1 Then
MsgBox "Girdiğiniz sayı=1"
ElseIf a = 2 Then
MsgBox "Girdiğiniz sayı=2"
ElseIf a = 3 Then
MsgBox "Girdiğiniz sayı=3"
ElseIf a = 4 Then
MsgBox "Girdiğiniz sayı=4"
ElseIf a = 5 Then
MsgBox "Girdiğiniz sayı=5"
End If
End Sub
Select .... Case
Mantık olarak yukarıda anlattığımız If..ElseIf yapısının aynısıdır.Mevzu bahsi olan değişken Select Case DEGİŞKEN komutuyla seçilir ve bu değişkenin birden fazla durumları Case Deger1... Case Değer2.... komutlarıyla kontrol edilir.Kullanımı;
Select Case Değişken
Case Değer1
.....
Case Değer2
.....
Case Değer3 to Değer 10
.....
Case Else
End Select
Gördüğünüz gibi 1 den fazla koşullu durumda select case yi kullandık.Case deger 3 to deger 10 yazan satır dikkatinizi çekmiştir sanırım.Değişkenin değerinin belli bir şeyden diğer şeye kadar olan durumda şunu şunu yap anlamına gelir.Dikkat edilmesi gereken diğer komut da Case Else.Bu da belirtilen tüm seçeneklerin dışında başka 1 değer olması durumunda altında belirtilen koomutları uygulatır.