首页 文章

在电子表格中使用activex复选框控件

提问于
浏览
1

我正在使用Excel 2013.我有一个excel工作簿 . 工作簿在工作表“图表”中包含activex复选框控件 . 该控件称为chkAll . 打开工作簿时,会应用一些默认设置,其中一个是选中此复选框 . 下面的代码行是我正在使用的 .

Sheets("charts").chkAll.value = true

这在过去的几个月里一直有效,但今天已经不再有效了 . 获取错误消息“对象不支持此属性或方法” .

此外,当我手动尝试从ActiveX控件部分向电子表格添加复选框时,我收到一条错误消息,提示我“无法插入对象” .

不确定为什么现在会发生这些错误?

2 回答

  • 3

    这是由Microsoft更新导致无法在Excel工作簿中使用ActiveX控件引起的 . 关闭所有办公室程序,然后导航到:

    C:\ Users \ [用户名] \ AppData \本地\ TEMP \ Excel8.0

    并删除 MSForms.exd 文件将解决此问题 .

    这是一个临时文件,将在您再次启动Excel时重新创建,因此不必担心删除它 .

  • 0

    试试这个(对于工作表中的ActiveX控件):

    ThisWorkbook.Sheets("charts").Shapes("chkAll").OLEFormat.Object.Value = 1 '= true // for false the value is -4146.
    

    此外,对于工作表内的表单复选框,请使用:

    ThisWorkbook.Sheets("charts").Shapes("chkAll").ControlFormat.Value = 1 '= true // for false the value is 0.
    

相关问题