程序员人生 网站导航

当您尝试导出 Access 2007年中 MicrosoftGraph 对象编程错误信息: " "

栏目:access时间:2013-12-22 09:26:24

症状

当您尝试导出在 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.jpg
22.在 主 菜单, 单击 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
饮料45000
condiments15000
生成65000
seafood33000
8.在 创建 菜单上, 单击 窗体设计 窗体 组中。
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 。

注意 出现该问题是 " 症状 " 部分中讨论。
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐