Обработка ошибок.
Sub MySub()
On Error GoTo ErrorHandler
' Work done here...
' Screen for an expected error
If somethingWentWrong = True Then
Err.Raise Number:=myErrorNumber, Source:="MySub", _
Description:="This thing went wrong."
' Will now go to ErrorHandler
End If
' More work done here...
ExitProcedure:
On Error Resume Next
'Cleanup code goes here...
Exit Sub
ErrorHandler:
' If an error occurs (anticipated or not), the following will be executed.
Call SendEmailNotification( _
Recipient:="you@there.com", _
Subject:="Something went wrong.", _
Message:=Err.Number & vbCrLf & Err.Description & vbCrLf & Err.Source)
' Any other error handling goes here...
Resume ExitProcedure
End Sub
Чтобы отправить электронное письмо, существуют различные решения.Поиск CDO, MAPI , Sockmail .Поиск по ним даст вам примеры того, как написать подпрограмму SendEmailNotification
.Heads up: Ничто из этого не является прямым.