Microsoft Excel

Excel und VBA: Formeln, Programmierung, Lösungen

Die Excel/VBA-Beispiele

Thema

Fehler abfangen, wenn eine Arbeitsmappe nicht geöffnet ist

Gruppe

Verknüpfung

Problem

Wie kann ich eine Fehlermeldung abfangen, wenn ich eine Arbeitsmappe anspreche, die nicht geöffnet ist? In diesem Fall soll sie geöffnet werden.

Lösung
Geben Sie den nachfolgenden Code in ein Standardmodul ein und weisen Sie ihn einer Schaltfläche zu.

StandardModule: basMain

Sub FehlerAbfangen()
   Dim wkb As Workbook
   Dim sFile As String
   sFile = ThisWorkbook.Path & "\test1.xls"
   On Error Resume Next
   Set wkb = Workbooks("Test.xls")
   If Err > 0 Or wkb Is Nothing Then
      If Dir(sFile) = "" Then
         MsgBox "Die Testdatei " & sFile & " existiert nicht!"
         Exit Sub
      Else
         Set wkb = Workbooks.Open(sFile)
      End If
   End If
   Application.Goto wkb.Worksheets(1).Range("D12")
End Sub