Source 屬性
會傳回或設定 字串表達 式,指定原本產生錯誤之物件或應用程式的名稱。 讀取/寫入。
註解
Source屬性會指定代表產生錯誤之物件的字串運算式;運算式通常是物件的類別名稱或程式設計識別碼。
當您的程式碼無法處理存取物件中產生的錯誤時,請使用 Source 來提供資訊。 例如,如果您存取 Microsoft Excel 並產生 Division by zero
錯誤,Excel 會將 Err.Number 設定為該錯誤的錯誤碼,並將 SourceExcel.Application
設定為 。
從程式碼產生錯誤時, Source 是您應用程式的程式設計識別碼。 針對 類別模組, Source 應該包含格式為 project.class的名稱。
當您的程式碼發生非預期的錯誤時,會自動填入 Source 屬性。 針對 標準模組中的錯誤, Source 包含 專案 名稱。 針對類別模組中的錯誤, Source 包含具有 project.class 表單的名稱。
範例
本範例會將 Visual Basic 中建立之 Automation 物件的程式設計識別碼指派給 變數 MyObjectID
,然後在使用Raise方法產生錯誤時,將該識別碼指派給Err物件的Source屬性。
處理錯誤時,您不應該以程式設計方式使用Source屬性 (或Number以外的任何Err屬性) 。 在您無法處理錯誤的情況下,唯一有效使用 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 支援與意見反應。