在Excel 2010中,是否存在阻止用户访问表单或ActiveX控件属性的设置?
我正在与可以打开Excel文件并在工作表上插入控件(包括表单和ActiveX)的用户一起工作。但是,当该用户单击任何对象并转到其属性时,将显示该工作表的属性,而不是所选对象的属性。
此外,任何尝试通过工作表访问控件的宏都会抛出“Object不支持此属性或方法”错误,因为该控件为null。请参阅下面的示例,该示例尝试在名为“AddParts”的工作表上引用名为“CommonDialog1”的对话框控件:
Worksheets("AddParts").CommonDialog1.ShowOpen
我能够在同一工作簿中的其他计算机上运行这个完全相同的宏而没有任何问题。 Excel中是否存在一些用户设置阻止用户访问对象?
答案 0 :(得分:0)
回答以上问题: 1)工作簿未受保护 2)启用所有ActiveXControls而不受限制被选中。但是,通过使用内置的 Application.GetOpenFilename VBA函数来获取文件对话框而不是使用ActiveX对话框控件,我能够解决此问题。
我仍然不确定为什么用户无法使用ActiveX控件,但这种解决方法能够让用户使用Excel工作簿。
答案 1 :(得分:0)
有这个确切的问题并找到了这个解决方案
关闭Excel。
启动Windows资源管理器。
选择您的系统驱动器(通常为C :)
使用“搜索”框搜索* .exd
删除找到的所有文件。
再次启动Excel。
"Cannot insert object" error when adding ActiveX control like Microsoft DataGrid to Excel sheet