症狀
當您嘗試導出在 Microsoft office Access 2007, MicrosoftGraph 對象編程您收到以下錯誤消息: 運行時錯誤 1004:
應用程序定義或對象定義錯誤。當您嘗試關閉錯誤消息, 您收到以下錯誤消息: Chart 對象上操作失敗。
可能未注冊 OLE 服務器。
要注冊 OLE 服務器, 重新安裝它。 收到錯誤消息, 後無法執行下列操作: •保存表單•在視圖中打開窗體
替代方法
要解決此問題, 使用下列方法之一。
方法 1: 操作屬性設置為 acOLEClose 之後導出對象
1.啟動 Access 2007年。2.Microsoft Office 按鈕 , 依次 打開 。3.在 打開 對話框, 選擇與要, 數據庫, 然後單擊 打開 。4.在 創建 菜單, 單擊 數據透視圖 。5.在 設計 菜單上, 單擊 顯示/隱藏 組中 字段列表 。 這樣可以打開 圖表字段列表 列表。6.將 CategoryName 從 圖表字段列表 移動到 除去此處分類字段 。7.將 ProductSales 從 圖表字段列表 移動到 除去此處數據字段 。
按類別
注意 圖表顯示產品銷售額的總和。8.單擊 Microsoft Office 按鈕 , 然後單擊 關閉 。 9.另存為 對話框中, 鍵入 frmPivotChart 表單名稱 , 下, 然後單擊 確定 。10.創建 菜單, 上單擊 窗體組 , 中 窗體設計 並將 frmPivotChart 從導航窗格移動到設計器。
注意 此過程創建子窗體。11.將命令按鈕添加到主窗體, 並將命令按鈕的 Name 屬性設置為 Command 。12.在 設計 菜單, Controls 組, 中單擊 按鈕 , 然後單擊 Form 2 設計器以窗體上放置 命令 按鈕。13.Command , 右擊, 然後單擊 屬性 。14.屬性表 對話框中, 單擊 事件 選項卡, 然後單擊省略號按鈕 () 為 On Click 事件。 15.選擇生成器 " 對話框中, 選擇 代碼生成器 , 然後單擊 確定 。 16.在 VisualBasic 編輯器, 用以下代碼替換代碼。
Private Sub Command1_Click() Dim grpApp As Graph.Chart Set grpApp = Me.Graph1.Object grpApp.Export "C:\Graph1.jpg", "JPEG" Set grpApp = Nothing Me.Graph1.Action = acOLEClose End Sub
17.在 文件 菜單上, 單擊 關閉並返回到 Microsoft Office Access 。 18.在 保存 對話框中, 單擊 是 。19.另存為 對話框中, 鍵入 frmMain 表單名稱 , 下, 然後單擊 確定 。20.在 主 菜單, 單擊 Views 組, 中 視圖 並單擊 窗體視圖 。
體出現在數據透視圖視圖。21.在 frmMain 表單, 單擊 Command 按鈕將透視圖導出到下列文件: C:\PivotChart1.jpg22.在 主 菜單, 單擊 Views 組, 中 視圖 並單擊 設計視圖 。
窗體設計視圖中打開。
方法 2: 創建數據透視圖對象而不是圖形對象
對於此方法步驟是作為方法 1, 中除對於步驟 16 步驟相同。
要使用此方法, 請按照步驟 1 到 15 方法 1 中。 在步驟 16, 用以下代碼替換代碼。
Option Compare Database Private Sub Command1_Click() Dim frm As Access.Form Set frm = Me.frmPivotChart.Form frm.ChartSpace.ExportPicture "C:\PivotChart1.jpg", "JPEG" End Sub
然後, 執行步驟 17 到 22 方法 1 中。 狀態
Microsoft 已確認這是 " 適用於 " 一節中列出 Microsoft 產品中存在問題。
更多信息
步驟來重現問題
1.啟動 Access 2007年。2.Microsoft Office 按鈕 , 依次 新建 。3.單擊 空白數據庫 , 在 文件名 框中, 鍵入 DatabaseName , 然後單擊 創建 。4.在 創建 菜單上, 表 組中單擊 " 表設計 " 然後創建下表: 域名數據類型CategoryName 文本ProductSales貨幣5.Microsoft Office 按鈕 , 依次 保存 。 6.類型 tabSales 表名稱 中, 框, 然後單擊 " 確定 " 。
注意 當您單擊
確定 , 您可以創建一個主鍵。7.視圖 組, 中單擊 數據表 視圖, 並在 CategoryName 和 ProductSales 字段然後鍵入下列值: CategoryNameProductSales飲料45000condiments15000生成65000seafood330008.在 創建 菜單上, 單擊 窗體設計 窗體 組中。9.設計 菜單, 上 控件 組, 中 Chart 控件依次 Form 1 設計器。10.在 圖表向導 對話框中, 單擊 下一步 。
注意 Table:tabSales 自動選擇下
哪個表或查詢是否將用於創建圖表 。11.在 圖表向導 哪個字段包含要用於圖表數據 , 下選擇 CategoryName 在 " 可用字段 。12.單擊 > 以 CategoryName 字段用於圖表 , 下移動, 然後單擊 完成 。 13.對於 ProductSales 重復步驟 11 和 12。14.用鼠標右鍵單擊圖表, 然後單擊 屬性 。15.然後單擊 Form 1 設計器 設計 菜單, 上 按鈕 和 控件 組, 中。16.單擊 取消 以關閉 命令按鈕向導 。17.用鼠標右鍵單擊 Command 控件, 然後單擊 生成事件 。18.在 VisualBasic 編輯器, 用以下代碼替換現有代碼。
Option Compare Database Private Sub Command1_Click() Dim grpApp As Graph.Chart Set grpApp = Me.Graph0.Object grpApp.Export "C:\Graph0.jpg", "JPEG" Set grpApp = Nothing End Sub
19.在 工具 菜單上, 單擊 引用 。 20.中
引用 - DatabaseName 對話框中, 單擊以選中 Microsoft 12.0 MicrosoftGraph 對象庫 , 然後再單擊 確定 。21.在 文件 菜單上, 單擊 關閉並返回到 Microsoft Office Access 。22.視圖 組, 中 視圖 , 依次 窗體視圖 。23.在 Form 1 , 單擊 Command 。
注意 出現該問題是 " 症狀 " 部分中討論。