VBA'da Hata Kaydı

Katılım
6 Aralık 2021
Mesajlar
38
Excel Vers. ve Dili
Excel2016
Türkçe
Merhabalar
Benim yaptığım bir program var ve yapmak istediğim şu
Kodlarda bir hata olduğunda yani bir hata verdiğinde hatalı kodu hücreye yazdırarak kayıt almasını istiyorum. Örneğin
Hata verdiği kod: if stokkodu = 3 then
Bu kodda hata aldığında gidip sayfa4 e a1 hücresine bu kodu yazıcak. Bende bu şekilde hataların kaydını tutucam. Şöyleki program şirket genelinde kullanılıyor, ne kadar hata denetimi yapsamda çok fazla kombinasyon olduğundan nerde ne zaman hata çıkacağını görmem gerekli.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,165
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Örnek olması açısından şöyle bir şey hazırladım.
Birebir aynısını yaparsınız yada size yol gösterici olur.
Tüm prosedürlere aşağıdaki gibi yapabilirsiniz.

Kod:
Dim Hata As String

Sub Test()
    On Error GoTo Hata
    
    '________________Kodlarınız burada başlayacak______________________
    Dim Toplam As Double
    
    Hata = "1. Toplamda hata var. Prosedür adı 'Test'"
    Toplam = 1 + 2
    
    Hata = "2. Toplamda hata var. Prosedür adı 'Test'" 'bir alt satırda hata vereceği için alttaki kod için bilgi yazdım.
    Toplam = Toplam + "abc" 'Burada hata versin diye rakam ile metni toplama yaptım, dolayısı ile hata verecek
    
    
    '________________Kodlarınız burada bitecek______________________
    
    Exit Sub 'Eğer kodlar hiç hata vermezse, kodlar buraya kadar çalışacak ve durdurulacaktır.
Hata:
    Cells(Rows.Count, "A").End(xlUp)(2, 1) = "Hata Kodu: " & Err.Number 'Excel Hata kodu
    Cells(Rows.Count, "A").End(xlUp)(1, 2) = "Hata Açıklaması: " & Err.Description 'Excel Hata Açıklaması
    Cells(Rows.Count, "A").End(xlUp)(1, 3) = "Hata: " & Hata ' Kendi hata açıklaman
    
End Sub
 
Üst