Ana Sayfa / Forum Ana Başlıklar / Şart (Koşul) Yapıları / GoTo İfadesi
Döngü içerisinde belli şartlar oluşunca ya da prosedür içerisinde herhangi bir yerde iken, bazen başka bir satıra gitmek gerekebilir. Bunun için "GoTo" deyimi kullanılabileceği gibi, "Exit For" deyimi de kullanılabilir. "GoTo" deyimi kullanımında doğrudan belli bir etiketli satıra yönledirilirken, Exit For döngüden çıkılarak hemen arkasından gelen satırdan işleme devam edilir. Etiket ibaresi yani gidilecek satırı belirten ifade metin veya sayı olabilir. Etiketin metin olması durumunda "GoTo" deyiminden sonra "Etiket Adı" örneğin "HedefSatir", gidilecek satırdaki etiket adından hemen sonra ise iki nokta üst üste "HedefSatir:" konulmalıdır. Eğer etiket sayı ile belirtilimişse gidilecek satırdaki sayı ibaresinden sonra iki nokta koymaya gerek yoktur.
Sub Prosedur_Adi()
For i = 1 To 20
If Cells(i, "A").Value > 40 Then GoTo HedefSatir
Next i
MsgBox "40'tan Büyük Bir Sayı Yok"
HedefSatir:
MsgBox i & ". Satırdaki Rakam 40'tan Büyük"
End Sub
Sub Prosedur_Adi()
For i = 1 To 20
If Cells(i, "A").Value > 40 Then GoTo 99
Next i
MsgBox "40'tan Büyük Bir Sayı Yok"
99
MsgBox i & ". Satırdaki Rakam 40'tan Büyük"
End Sub
"GoTo" deyimin çok bilinmeyen ve kullanılmayan bir kullanım şekli daha mevcut olup, burada da şarttan gelen "Doğru" ve "Yanlış"a göre hareket edilir.
Sub Prosedur_Adi()
For i = 1 To 20
If Cells(i, "A").Value = "" Then GoTo Hedef01 Else GoTo Hedef02
Next i
Hedef01:
Cells(i, "B").Value = "Boş Hücre"
Hedef02:
Cells(i, "B").Value = "Hücre Boş Değil"
End Sub
Bu Alt Başlık için henüz Soru oluşturulmamış...
TOPLAM | DÜN | |
---|---|---|
Sorular: | 2 | 0 |
Gönderiler: | 3 | 0 |
Kullanıcılar: | 4 | 0 |