在程式碼模組中使用 CodeDb 方法來判斷 Database 物件的名稱,該物件會參照目前執行程式碼之資料庫。 使用 CodeDb 方法來存取資料存取物件 (DAO) 屬於程式庫資料庫。
語法
表達。代碼Db
expression 代表 Application 物件的變數。
傳回值
Database
註解
例如,您可以使用 CodeDb 方法程式庫資料庫模組中建立參照程式庫資料庫的 資料庫 物件。 您可以再開啟程式庫資料庫中的資料表為基礎的 recordset。
設定資料庫= CodeDb
CodeDb 方法會傳回 Database 物件的 Name 屬性是從其呼叫它的資料庫名稱與完整路徑。 此方法時會非常有用需要操作中資料存取物件程式庫資料庫。
當您呼叫方法程式庫資料庫時,從中您已呼叫此方法的資料庫會維持目前資料庫即使程式庫資料庫中的模組中執行程式碼。 若要參照程式庫資料庫中的資料存取物件,您必須知道代表程式庫資料庫的 資料庫物件 名稱。
例如,假設您有一個資料表中列出的錯誤訊息程式庫資料庫。 為操作代碼表格中的資料,您無法使用 CodeDb 方法來決定參照到包含資料表的程式庫資料庫的 Database 物件的名稱。
如果從目前的資料庫執行 CodeDb 方法,將會傳回目前的資料庫是由 CurrentDb 方法傳回的值相同的名稱。
範例
下列範例會使用 CodeDb 方法可傳回參照程式庫資料庫的 資料庫 物件。 程式庫資料庫包含名為錯誤及目前正在執行的程式碼的這兩個資料表。 CodeDb 方法判斷此資訊之後,GetErrorString 函式會根據 Errors 資料表開啟資料表類型資料集。 然後會從名為 ErrorData 根據傳遞給函數的 整數 值欄位擷取錯誤訊息。
Function GetErrorString(ByVal intError As Integer) As String
Dim dbs As Database, rst As RecordSet
' Variable refers to database where code is running.
Set dbs = CodeDb
' Create table-type Recordset object.
Set rst = dbs.OpenRecordSet("Errors", dbOpenTable)
' Set index to primary key (ErrorID field).
rst.Index = "PrimaryKey"
' Find error number passed to GetErrorString function.
rst.Seek "=", intError
' Return associated error message.
GetErrorString = rst.Fields!ErrorData.Value
rst.Close
End Function
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。