Я немного борюсь с обработкой ошибок возвращаемой функции в VBA.
Я получил некоторый код в подпрограмме, которая вызывает функцию. Функция возвращает 0 в случае успеха и -1 в случае ошибки.
Это мой саб:
Sub mySub
Dim returnValue as Integer
returnValue = functionA(...)
If returnValue = -1 Then
MsgBox "The following error appeared: " & err.description & ", Errornumber= " & err.number
Else
MsgBox "Success"
End If
End Sub
Моя функция выглядит так:
Function functionA(...) as Integer
On error goto errorHandler
' do something
funtionA = 0
Exit Function
errorHandler:
functionA = -1
End Function
Теперь моя проблема: если функция возвращает -1, потому что она была остановленаошибка, я не могу получить какую-либо информацию от объекта ошибки в моей вызывающей подпрограмме. Код ошибки - 0, а описание - emtpy. Похоже, что конец функции сбрасывает объект err. Есть ли умный способ достичь того, что я хочу сделать?
Заранее спасибо! :)