Ниже приведен пример функции с обработчиком ошибок (она пытается записать текст в файл на гибком диске А:):
Function dhWriteToFloppy(strText As String) As Boolean
' Включение обработчика ошибок
On Error GoTo ErrHandler
' Выполнение операций с дискетой
Open «A:\Text.txt» For Output As 1
Write #1, strText
Close 1
' Действия выполнены успешно
dhWriteToFloppy = True
ExitFunc:
' Выход из функции до обработчика ошибок
Exit Function
ErrHandler:
' Закрытие файла, если его все-таки удалось открыть
Close 1
Dim strErrMessage As String
' Идентификация ошибки и формирование текста сообщения
Select Case Err.Number
Case 71
strErrMessage = «Нет диска в дисководе»
Case 70
strErrMessage = «Диск защищен от записи»
Case 61
strErrMessage = «Нет места на диске»
Case Else
strErrMessage = Err.Description
End Select
' Отображение сообщения об ошибке
MsgBox strErrMessage, vbExclamation, «Ошибка»
' Продолжение выполнения программы
dhWriteToFloppy = False
Resume ExitFunc
End Function
Если запись удается, то функция возвращает значение True. Если возникает ошибка, то выдается соответствующее сообщение, после чего функция возвращает значение False. На примере функции dhWriteToFloppy следует заметить, что при нормальном выполнении программы (без возникновения ошибок) обработчик ошибок выполняться не должен, что достигается выходом из функции до обработчика с помощью инструкции Exit Function.