İçindekiler:
- EnterSquareRoot yordamının yeniden gözden geçirilmesi
- Açık Hata çalışmıyor mu?
- On Error deyimi hakkında
Video: Excel VBA Dersleri Combobox Kullanımı ve Veri Ekleme 2024
Excel 2016'daki olası her hatayı nasıl tanımlayabilir ve işleyebilirsiniz? Genellikle yapamazsın. Neyse ki, VBA bu sinir bozucu hatalarla başa çıkmanın başka bir yolu da sunmaktadır.
EnterSquareRoot yordamının yeniden gözden geçirilmesi
Aşağıdaki kodu inceleyin. Rutin, tüm hataları yakalamak ve ardından InputBox'un iptal edilip edilmediğini kontrol etmek için çok amaçlı bir On Error ifadesi kullanır.
Sub EnterSquareRoot5 () Dim Num as Variant Dim Msg As String 'Hata giderme ayarla On Error GoTo BadEntry' Bir değeri sor Num = InputBox ("Bir değer girin") 'İptal edildiğinde çıkın Num = "" Sonra Exit Sub 'Kök ActiveCell'i yerleştirin. Değer = Sqr (Num) Exit Sub BadEntry: Msg = "Bir hata oluştu. "& VbNewLine & vbNewLine Msg = Msg &" Bir aralık seçildiğinden emin olun, "Msg = Msg &" sayfası korunmaz, "Msg = Msg &" ve negatif olmayan bir değer girersiniz. "MsgBox Msg, vbCritical End Sub
Bu yordam herhangi bir türü çalışma zamanı hatasını tuzaklar. Bir çalışma zamanı hatası sıkıştırdıktan sonra gözden geçirilmiş EnterSquareRoot yordamı bu ileti kutusu görüntüler. Bu ileti kutusunda, hatanın en olası nedenleri açıklanmaktadır.
Açık Hata çalışmıyor mu?
Açık Hata bildirimi reklamı yapılana göre çalışmıyorsa, ayarlarınızdan birini değiştirmeniz gerekir:
-
VBE'yi etkinleştirin.
-
Araçlar → Seçenekler komutunu seçin.
-
Seçenekler iletişim kutusunun Genel sekmesini tıklayın.
-
Tüm Hatalar Arası ayarının seçimi kaldırılmış olduğundan emin olun.
Bu ayar seçilirse, Excel aslında On Error deyimlerini yoksayar. Normalde Hata İletme seçeneklerini İşlenmeyen Hatalarda Kopma olarak ayarlamak istersiniz.
On Error deyimi hakkında
VBA kodunuzda On Error deyimini kullanmak, Excel'in yerleşik hata işlemesini atlayarak kendi hata işleme kodunuzu kullanmanızı sağlar. Önceki örnekte, bir çalışma zamanı hatası, BadEntry etiketli deyime atlamak için makro yürütmesine neden olur. Sonuç olarak, Excel'in düşmanca hata iletilerinden kaçınırsınız ve kendi iletinizi kullanıcıya gösterebilirsiniz.
Örnekte, BadEntry etiketinin hemen öncesinde Exit Sub ifadesi kullanıldığına dikkat edin. olmayan bir hata oluşursa, hata işleme kodunu çalıştırmak istemediğiniz için bu ifade gereklidir.