Option
Explicit
Sub
Ansatz()
On
Error
GoTo
ErrHandler
If
ActiveSheet
Is
Nothing
Then
Call
MsgBox(
"Kein aktives Tabellenblatt zum Verarbeiten vorhanden."
, _
vbExclamation)
Exit
Sub
ElseIf
Not
TypeOf
ActiveSheet
Is
Excel.Worksheet
Then
Call
MsgBox(
"Das aktive Blatt ist kein Tabellenblatt. Vorgang kann nicht fortgesetzt werden."
, _
vbExclamation)
Exit
Sub
End
If
Dim
wksUebersicht
As
Excel.Worksheet
Dim
wksQuelle
As
Excel.Worksheet
Dim
blnOpend
As
Boolean
Set
wksQuelle = ActiveSheet
If
Not
BezieheUebersicht(wksUebersicht, blnOpend)
Then
Call
MsgBox(
"Übersicht konnte nicht geöffnet werden."
, vbInformation)
Exit
Sub
End
If
Call
MsgBox(
"Vorgang erfolgreich abgeschlossen."
, vbInformation)
GoTo
SafeExit
ErrHandler:
Call
MsgBox(Err.Description, vbCritical,
"Fehler "
& Err.Number)
SafeExit:
If
blnOpend
And
Not
wkbUebersicht
Is
Nothing
Then
Call
wksUebersicht.Parent.Close(SaveChanges:=
True
)
End
If
End
Sub
Private
Function
BezieheUebersicht( _
ByRef
Worksheet
As
Excel.Worksheet, _
ByRef
Opened
As
Boolean
_
)
As
Boolean
End
Function