Sehen Sie sich einmal diese kleine Prozedur an. Betrachten Sie vor allem die ersten sechs Codezeilen, d.h. die Zeilen vor dem 'On Error GoTo ErrorHandler'. Die Eigenschaft EnableCancelKey wird zuerst auf xlErrorHandler gesetzt und dann EnableCancelKey abgefragt und im Direktfenster angezeigt.
Sub SetTheCancelKey()
Application.EnableCancelKey = xlErrorHandler
If Application.EnableCancelKey = xlErrorHandler Then
Debug.Print "EnableCancelKey enthält xlErrorHandler"
Else
Debug.Print "EnableCancelKey enthält xlInterrupt"
End If
On Error GoTo ErrorHandler
'Weiterer VBA-Programmcode...
Exit Sub
ErrorHandler:
MsgBox Err.Number
End Sub
Die Frage lautet nun:
Was wird im Direktfenster ausgegeben, wenn Sie die Prozedur wie gewohnt ausführen?
Wird "EnableCancelKey enthält xlErrorHandler" oder "EnableCancelKey
enthält xlInterrupt" angezeigt? Wenn Sie der Meinung sind, dass
"EnableCancelKey enthält xlErrorHandler" erscheint, dann liegen Sie absolut
richtig. Ist ja eigentlich auch logisch, weil die Eigenschaft EnableCancelKey auf
xlErrorHandler gesetzt wurde.
Sie fragen sich, was das ganze soll? Na dann führen Sie mal die Prozedur im Einzelschrittmodus (F8) aus...
The eXpLorer
Zuletzt aktualisiert am
3.01.2004 / 16:00 Uhr
© Copyright 2002-2004 by Philipp von Wartburg, CH-8917
Oberlunkhofen
Alle Rechte vorbehalten