Свойство Source
Возвращает или задает строковое выражение, которое определяет имя объекта или приложения, ставшего источником ошибки. Для чтения и записи.
Замечания
Свойство Source указывает строковое выражение, представляющее объект, создающий ошибку; выражение обычно является именем класса объекта или программным идентификатором.
Используйте источник для предоставления сведений, если код не может обработать ошибку, созданную в объекте, к который осуществляется доступ. Например, если вы обращаетесь к Microsoft Excel и он создает ошибку Division by zero
, Excel задает Err.Number в качестве кода ошибки для этой ошибки, а для параметра ИсточникExcel.Application
— значение .
При формировании ошибки в коде свойство Source определяет программный идентификатор приложения. Для модулей класса свойство Source должно содержать имя в форме project.class.
При возникновении непредвиденных ошибок в коде свойство Source заполняется автоматически. Для ошибок в стандартном модуле свойство Source содержит имя проекта. Для ошибок в модуле класса свойство Source содержит имя в форме project.class.
Пример
В этом примере программный идентификатор объекта службы автоматизации, созданного в Visual Basic, назначается переменной MyObjectID
, а затем присваивается свойству Source объекта Err при возникновении ошибки с помощью метода Raise .
При обработке ошибок не следует использовать свойство Source (или любые свойства Err , отличные от Number) программным способом. Свойства, отличные от Number можно использовать только для отображения конечным пользователям подробной информации в тех случаях, когда вам не удается обработать ошибку. В примере предполагается, что App
и MyClass
являются допустимыми ссылками.
Dim MyClass, MyObjectID, MyHelpFile, MyHelpContext
' An object of type MyClass generates an error and fills all Err object
' properties, including Source, which receives MyObjectID, which is a
' combination of the Title property of the App object and the Name
' property of the MyClass object.
MyObjectID = App.Title & "." & MyClass.Name
Err.Raise Number := vbObjectError + 894, Source := MyObjectID, _
Description := "Was not able to complete your task", _
HelpFile := MyHelpFile, HelpContext := MyHelpContext
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.