Вот один подход, который может работать для вас.
Поместите ваш вызов в COM-объект внутри подпрограммы или функции, чтобы вы могли использовать «On Error Resume Next» только в этой области. (Если вы не делаете On Error Resume Next
везде, что, возможно, тоже нормально, если вы делаете много ошибок).
Всякий раз, когда вы делаете что-либо, что может вызвать ошибку, например, вызывая ваш COM-объект, проверьте наличие ошибки и обработайте ее соответствующим образом. Например, в случае, когда вы просто хотите тихо зарегистрировать ошибку, вы можете вызвать подпрограмму, подобную этой:
Sub CheckError
If Err Then
WriteLog "ERROR " & Err.Number & ": " & Err.Description
Err.Clear
End If
End Sub 'CheckError
Или же выйдите и отобразите информацию об ошибке для пользователя.