Das Beispiel könnte jetzt noch durch ein einfaches Fehlerhandling ergänzt werden. Hierbei ergänzen wir zu den erwarteten Rückgabewerten einen Else-Zweig in die If-Bedingung, um Werte außerhalb des erwartbaren Bereichs „abfangen“ zu können und demnach zu verhindern, dass diese im weiteren Scriptverlauf zu Problemen führen können.
' Anzeige eines Auswahldialogs mit drei möglichen Antworten und einer Abbrechen-Schaltfläche
nResult = cRM.DialogChoiceMessageBox("Welcher Mitarbeiter soll als Verantwortlicher eingetragen werden?", "Auswahl Verantwortlicher", "Thomas Held" & vbTab & "Laura Frisch" & vbTab & "Lisa Nett", 1, true)
' Wenn der Rückgabewert einem der erwarteten Werte entspricht, informiere den Nutzer über seine Auswahl
If (nResult = 101) Then
Call cRM.DialogMessageBox("Thomas Held ist nun für diesen Datensatz verantwortlich.", "Erfolgreiche Auswahl", vbInformation)
ElseIf (nResult = 102) Then
Call cRM.DialogMessageBox("Laura Frisch ist nun für diesen Datensatz verantwortlich.", "Erfolgreiche Auswahl", vbInformation)
ElseIf (nResult = 103) Then
Call cRM.DialogMessageBox("Lisa Nett ist nun für diesen Datensatz verantwortlich.", "Erfolgreiche Auswahl", vbInformation)
ElseIf (nResult = 2) Then
Call cRM.DialogMessageBox("Die Bearbeitung wurde abgebrochen.", "Bearbeitung abgebrochen", vbInformation)
' Wenn der Rückgabewert einem unerwarteten Wert entspricht, informiere den Nutzer und beende das Script
Else
Call cRM.DialogMessageBox("Es wurde ein nicht erwarteter Rückgabewert erkannt." & vbCrLf & vbCrLf &_
"Bitte wenden Sie sich an Ihren Administrator." & vbCrLf & vbCrLf &_
"Das Script wird nun beendet.", "Unerwarteter Rückgabewert", vbCritical)
Call WScript.Quit()
End If