VBA Bir Satır Etiketine Git

VBA'daki GoTo Beyanı, bir kod satırına atlamanıza izin verir.

İlk önce kodunuzun herhangi bir yerinde bir satır etiketi oluşturun:

1 Atlamak:

Ardından satır etiketine atlamak için “Git” ifadesine ekleyin

1 Git Atla

Örneklere Git

Bu örnek yılı test ediyor. Yıl 2022 veya daha sonraysa, Satırı Atla etiketine gidecektir. Bu, belirli koşullar karşılanırsa kodu atlamanıza olanak tanır.

123456789101112 Alt GoTo_Example()Dim yıl Tamsayı olarakyıl = 2019Yıl >= 2019 ise, Git Atla'Yıllar için İşlem Verileri < 2022MsgBox "Yıl 2022'den Önce"Atlamak:Alt Bitiş

Birden Çok Satır Etiketine Git

İlgili kod satırlarına atlamak için GoTo deyimlerini de kullanabilirsiniz. Hangi yıla göre farklı kod konumlarına gitmek için önceki örneğimizi ayarlayalım:

1234567891011121314151617181920212223242526272829303132 Alt GoTo_Statement()Dim yıl Tamsayı olarakyıl = 2019Yıl = 2019 ise2019 yılına gitElseIf yıl = 2010 O zaman2020 yılına gitBaşka2021 yılına gitBitiryıl2019:'Süreç 2022MsgBox "Yıl 2022"EndProc'a Git2020 yılı:'Süreç 2022MsgBox "Yıl 2022"EndProc'a Gityıl2021:'Süreç 2022+MsgBox "Yıl 2022+"EndProc:Alt Bitiş

Her satır etiketinden önce “GoTo EndProc”a dikkat edin. Bu kod satırını, ilgili “Git” tarafından erişilmedikçe bu kod bölümlerinin atlanması için ekledik.

GoTo Hata İşleyici Prosedürün Sonu

Şimdi hata varsa işlemin sonuna gitmek için Error Handling'i kullanalım.

123456789101112 Alt GoTo_OnError ()Dim i Tamsayı OlarakGoTo EndProc Hatasındaben = 5 / 0MsgBox iEndProc:Alt Bitiş

Tekrar Koduna Git

Son örneğimiz, bazı kodları tekrarlamak için GoTo Bildirimini kullanacak.

Aşağıda, kullanıcının uyarıyı kabul ettiğini doğrulamak için bir Evet / Hayır Mesaj Kutusu (Daha fazla bilgi için tıklayın) kullanıyoruz. 'Hayır'ı tıklarlarsa, 'Evet'i tıklatana kadar mesaj kutusu tekrar görüntülenecektir (aşağıdaki GIF'e bakın).

1234567891011 Alt GoTo_YesNoMsgBox()Tekrar Mesajı:Dim cevap Tamsayı olarakanswer = MsgBox("UYARI: Bu dosya Salt Okunur bir dosya olarak açılmıştır, yani yaptığınız değişiklikler Yazma Erişim haklarına sahip olmadıkça/olmadıkça kaydedilmeyecektir." & _Chr(13) & Chr(13) & "Bu dosyada çalışmadan önce bir kopyasını kaydetmek için Dosya, Farklı Kaydet'i seçin." & vbNewLine & vbNewLine & "Anlıyor musunuz?", vbExclamation + vbYesNo, "UYARI!")Cevap = vbNo ise, TekrarlaMsg'ye Git 'Kullanıcı "Evet" i tıklayana kadar tekrarlayınAlt Bitiş

VBA Access VBA'da Bir Satır Etiketine Git

Yukarıdaki örneklerin tümü, Access VBA'da Excel VBA'dakiyle tamamen aynı şekilde çalışır.

1234567 Alt TestGoTo()Hatada GoTo sona eriyorDoCmd.OpenForm "FrmClients"Alt Çıkışbitirme:MsgBox "Form açılamıyor"Alt Bitiş

Arkadaşlarınızla sayfasını paylaşan sitenin gelişimine yardımcı olacak

wave wave wave wave wave