• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Eğitim Excel VBA Hata Yakalama Rehberi: On Error GoTo Yapısı ve Resume Komutları

ExcelCozum

Moderatör
Katılım
27 Eki 2021
Mesajlar
83
Çözümler
1
Aldığı beğeni
250
Konu Sahibi
Windows 10 Google Chrome 152
Değerli ExcelCozum üyeleri ve VBA geliştirmeye gönül veren dostlarımız,Yazdığınız makrolar kendi bilgisayarınızda sorunsuz çalışırken, başka bir kullanıcının bilgisayarında veya veri setinde en ufak bir sapma olduğunda Runtime Error vererek patlıyor mu? Bir kodun profesyonelce yazılıp yazılmadığını gösteren en büyük kriter, o kodun hatalar karşısında nasıl davrandığıdır.Bu makalemizde, makrolarınızın yarıda kesilmesini önleyen ve hataları arka planda sessizce çözen VBA Hata Yakalama (Error Handling) mekanizmalarını A'dan Z'ye inceliyoruz.
1. On Error Resume Next (Hataları Görmezden Gelme)
Kod satır satır çalışırken bir hata ile karşılaşırsa, o satırı hiç umursamaz ve bir sonraki satırdan çalışmaya devam eder. Genellikle sayfa silerken çıkan uyarıları veya döngü içinde bulunamayan değerleri atlamak için kullanılır.⚠️
Kritik Uyarı:
Kodun tamamında bunu kullanırsanız, mantıksal hataları gözden kaçırırsınız. Sadece hatanın beklendiği satırdan önce açıp, hemen sonra kapatmalısınız.
HTML:
C++:
İçeriği görebilmek için Giriş yap ya da Üye ol.

2. On Error GoTo [Etiket] (Hata Yönetim Merkezi)
En profesyonel yöntemdir. Kod çalışırken herhangi bir satırda hata oluşursa, kodun akışı anında sizin belirlediğiniz bir alt bölüme (HataAlani:) sıçrar.

HTML:
C++:
İçeriği görebilmek için Giriş yap ya da Üye ol.

3. Resume ve Resume Next Komutları ile Akışı Yönetme
Hata alanına düştükten sonra, hatayı düzeltip koda kaldığı yerden devam ettirmek veya hatanın olduğu satırı atlatmak için kullanılır.
  • Resume: Hataya neden olan satırı, hatayı giderdikten sonra yeniden çalıştırmayı dener.
  • Resume Next: Hataya neden olan satırı bırakıp, bir sonraki satırdan koda kaldığı yerden devam ettirir.
Sizin de projelerinizde sıklıkla karşılaştığınız hata kodları varsa bu başlık altında paylaşın, birlikte ideal hata yakalama bloklarını kurgulayalım.
Keyifli kodlamalar.
 
Geri
Üst