“无法插入对象”将Microsoft DataGrid等ActiveX控件添加到Excel工作表时出错 [英] "Cannot insert object" error when adding ActiveX control like Microsoft DataGrid to Excel sheet

查看:1512
本文介绍了“无法插入对象”将Microsoft DataGrid等ActiveX控件添加到Excel工作表时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们的iGrid ActiveX网格控件的用户之一需要将其直接插入到MS Excel表单中,但是它们还没有设法完成此操作 - 始终都会生成无法插入对象错误。我们还可以在Win7 64位和MS Office 2010 32位的测试PC上重现此问题。

One of the users of our iGrid ActiveX grid control needs to insert it directly into an MS Excel sheet, but they have not managed to do that - the "Cannot insert object" error is generated all the time. We can also reproduce this problem on our test pc under Win7 64-bit and MS Office 2010 32-bit.

此COM控件已在操作系统中正确注册,可以添加到VBA UserForms和其他应用程序,但我们不能为Excel表单。看来,这是ActiveX的一个常见问题 - 甚至像Microsoft DataGrid Control 6.0这样的遗留问题。在大量时间内搜索解决方案后,我们得出结论,这是MS Office中的安全设置。所以问题可以表述如下:如何在MS Office中启用特定ActiveX控件的使用?

This COM control is properly registered in the OS and can be added to VBA UserForms and other apps, but we cannot do that for an Excel sheets. It seems, it's a common problem for ActiveX's - even legacy ones like Microsoft DataGrid Control 6.0. After searching for a solution for a significant amount of time, we concluded it is a security setting in MS Office. So the question can be formulated as the following: How to enable the usage of specific ActiveX controls in MS Office?

以下是我们发现的相关资源,哪些可能有帮助。

Below are the related resources we found and which might help.

首先, Microsoft声明


并不是所有的ActiveX控件都可以直接在工作表上使用;一些只能在Microsoft Visual Basic应用程序(VBA)用户窗体中使用。当您使用这些控件时,Excel会显示消息如果您尝试将其添加到工作表中,则无法插入对象。

Not all ActiveX controls can be used directly on worksheets; some can be used only on Microsoft Visual Basic for Applications (VBA) UserForms. When you work with these controls, Excel displays the message Cannot insert object if you try to add them to a worksheet.

有人知道吗什么缺少的功能可能会阻止ActiveX控件插入Excel表?

Does anybody know what missing features might prevent an ActiveX control from being insertable into Excel sheets?

其次, EXD文件。但是我们检查了 - 这不是我们的案例。

Second, there is a known issue with EXD files used to cache ActiveX controls. But we've checked - that's not our case.

第三,Microsoft有两篇技术文章解释了如何修复ActiveX的一些安全问题,使用注册表:

Third, there are two technical articles from Microsoft which explain how to "fix" some ActiveX security problems for ActiveX's using the registry:

PRB:错误消息无法插入对象在Excel
http://support.microsoft.com/default.aspx?scid=kb;EN-US;171280

PRB: Error Message "Cannot insert object" in Excel
http://support.microsoft.com/default.aspx?scid=kb;EN-US;171280

无法将某些脚本式ActiveX控件插入到Office 2013文档中
http://support.microsoft.com/kb/2793374

Cannot insert certain scriptable ActiveX controls into Office 2013 documents
http://support.microsoft.com/kb/2793374

似乎这也没有帮助 - 或者我们只是做错了。

It seems, this also does not help - or we just did something wrong.

我们尝试的最后一件事 - 办公信托中心。允许所有ActiveX的使用没有任何限制,并将iGrid ActiveX的文件夹添加到受信任位置列表中没有任何帮助。

And the last thing we tried - the Office Trust Center. Allowing the usage of all ActiveX's without any restrictions and adding the folder with our iGrid ActiveX to the list of trusted location didn't help anyhow.

推荐答案

从Technet Forum

From Technet Forum

关闭Excel。

启动Windows资源管理器。

Start Windows Explorer.

选择您的系统驱动器(通常为C:)

Select your system drive (usually C:)

使用搜索框搜索* .exd

Use the Search box to search for *.exd

删除找到的所有文件。

再次启动Excel。

这篇关于“无法插入对象”将Microsoft DataGrid等ActiveX控件添加到Excel工作表时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆