Excel Hakkında Herşey

Hata Ayıklama Kodları

Hata ayıklamada kullanılan başlıca kodlar aşağıdaki gibidir.

1. Bu yöntemde, bir hata oluştuğu anda kodun sonuna atlamak için bir etiket kullanılır.
Sub makro1()

On Error GoTo HATA

    [kod satırları]

HATA:

End Sub

2. Bu yöntemde belirlenen hatalar atlanılır ve ardından kalan talimatlar için normal hata ayıklama işlemine devam edilir. Genelde probleme çözüm olunmaz, sadece çok spesifik amaçlarda kullanılır.

Sub makro2()

On Error Resume Next
    [kod satırları]
    
On Error GoTo 0
    [kod satırları]
    
End Sub

3. Bu yöntemde hata ayıklama işlemi hata koduna göre daha ayrıntılı yapılır. Eğer hata yoksa makrodan çıkmak için "Exit Sub" ifadesi eklenir.

Sub makro3()

    On Error GoTo HATA
    
    [kod satırları]

Exit Sub

HATA:

    Select Case Err.Number
        Case 424 'hata kodu
            Exit Sub
        Case Else
            MsgBox "Bir hata oluştu. Lütfen seçiminizi tekrar kontrol edin"
    End Select
    
End Sub

Örnek:

Sub Formul_Say()
    'Çalışma kitabında toplam kaç adet formül olduğunu bulacağız
    Dim Sh As Worksheet
    Dim sayac1 As Double
    Dim sayac2 As Double
    
    For Each Sh In ThisWorkbook.Worksheets
        On Error GoTo HATA
        sayac1 = Sh.Cells.SpecialCells(xlCellTypeFormulas).Count
HATADEVAM:        sayac2 = sayac2 + sayac1
HATA:
    If Err.Number = 1004 Then
        sayac1 = 0
        Resume HATADEVAM
    End If
    Next Sh
    MsgBox "Bu çalışma kitabında " & sayac2 & " adet formül var!"
    
End Sub


Sub Yorum_Say()
    'Çalışma kitabında toplam kaç adet yorum olduğunu bulacağız
    Dim Sh As Worksheet
    Dim sayac1 As Double
    Dim sayac2 As Double
    
    For Each Sh In ThisWorkbook.Worksheets
        On Error GoTo HATA
        sayac1 = Sh.Cells.SpecialCells(xlCellTypeComments).Count
HATADEVAM:        sayac2 = sayac2 + sayac1
HATA:
    If Err.Number = 1004 Then
        sayac1 = 0
        Resume HATADEVAM
    End If
    Next Sh
    MsgBox "Bu çalışma kitabında " & sayac2 & " adet yorum var!"
    
End Sub

Watch ekranından değişkenler takip edilebilir:

watch

Paylaş:

Ara

Son eklenen

Diğer Uygulamalarla Etkileşim

Bu bölümde VBA aracılığıyla Word, PowerPoint, Outlook, Adobe gibi uygulamalarla iletişim kurmayı öğreneceğiz. Excel’in dahili yöntem ve meto...