中使用 Access 表單所包含的 ActiveX 控制項沒有出現沒有可用的設計階段授權時


本文適用於 Microsoft Access 資料庫 (.mdb) 檔案或 Microsoft Access 資料庫 (.accdb) 檔案。

初學者︰ 需要單一使用者電腦上的使用者介面的知識。

狀況


在 Access 資料庫中,表單可能有授權的 MFC ActiveX 控制項。此外,表單也可能有另一個控制項 (如文字方塊),結合到連結的資料表的欄位。如果您在表單檢視中開啟此表單時,MFC ActiveX 控制項可能不會出現。無法在相同表單所在的電腦上使用 MFC ActiveX 控制項的設計階段授權選項時,就會發生這個問題。

注意如果您將 MFC ActiveX 控制項加入至表單,且 MFC ActiveX 控制項之使用權係與設計階段授權。除非在設計檢視中開啟表單,則不需要表單所在的同一部電腦上的設計階段授權的可用性。

原因


Access 會試著變更名稱時包含表單的資料庫已啟用執行名稱自動校正的 [設計] 檢視中開啟表單時,就會發生這個問題。設計階段授權不是電腦上可用的因為 Access 會移除註冊 MFC ActiveX 控制項。因此,MFC ActiveX 控制項不會出現。

因應措施


要解決這個問題,請停用追蹤名稱自動校正資訊的資料庫或資料庫中停用執行名稱自動校正之前您註冊 MFC ActiveX 控制項,在電腦上。若要執行這項操作,請參考下列步驟:
  1. 啟動 Access。
  2. 開啟包含與 MFC ActiveX 控制項之表單的資料庫。
  3. 在 [工具] 功能表上按一下
    選項

    注意在 Access 2007 中,請按一下 [ Microsoft Office] 按鈕,,,然後按一下 [目前的資料庫
  4. 在 [選項] 對話方塊中,按一下
    一般] 索引標籤,然後按一下以清除 [執行名稱自動校正]核取方塊。

    注意事項
    • 在 Access 2007 中,按一下以清除在 [名稱自動校正選項] 下的 [執行名稱自動校正] 核取方塊。
    • 您也可以按一下以清除 [追蹤名稱自動校正資訊] 核取方塊,資料庫中。當您按一下以清除 [追蹤名稱自動校正資訊] 核取方塊,
      執行名稱自動校正] 選項則無法使用。
  5. 關閉資料庫。
  6. 結束 [存取]。
  7. 命令提示字元中,移動,然後再執行 [ regsvr32

    當您執行這項指令時,這會註冊 MFC ActiveX 控制項 (.ocx 檔案)。
  8. 在表單檢視中開啟表單。

    MFC ActiveX 控制項就會出現在表單中。

更多的資訊


當您啟用追蹤名稱自動校正資訊的資料庫時,Access 會建立在資料庫中的每個物件的名稱對應。名稱對應用來追蹤名稱變更。如果執行名稱自動校正選項也會可用,會驗證存取,必要的名稱會套用變更至物件或其內容在開啟的物件每次。如果發生變更,名稱變更都會自動進行。

當您移動包含另一台電腦,MFC ActiveX 控制項檔案 (.ocx),以及表單的資料庫時,就會發生問題,然後您重新連結表單中控制項 (如文字方塊) 指資料表。當您重新連結資料表時,這會啟動追蹤名稱自動校正資訊表單。當您在表單檢視中開啟表單時,Access 就會嘗試在設計檢視中開啟表單的自動執行名稱修正。失敗的原因是 MFC ActiveX 控制項的設計階段授權並不存在。因此,MFC ActiveX 控制項不會出現在表單上。

如果表單沒有包含連結資料表的任何參考,則不會發生這個問題。