我创建了一个带有ActiveX组合框控件的工作簿,这些控件通过worksheet_activate()代码填充:
Private Sub Worksheet_Activate()
With ActiveSheet.cmboBox1
.Clear
.AddItem "Item 1"
.AddItem "Item 2"
.AddItem "etc..."
.Text = "Select... "
.Width = 222
.Height = 19
.Left = 0
.Top = 0
End With
End Sub
这在我的电脑上运行正常。但是,当我尝试在同事的计算机上打开电子表格时,他们收到错误438,调试突出显示该行:
With ActiveSheet.cmboBox1
我比较了Excel版本,我们运行的版本完全相同。
我们拥有相同的ActiveX信任中心设置。 我创建了一个空白工作表,只有一个ActiveX组合框,同样的事情发生。
我已尝试直接指定工作表而不是使用ActiveSheet,但问题仍然存在。
我离我的代码太近了,然后这个!提前谢谢。
答案 0 :(得分:0)
我终于确定了问题的原因。 再一次,它是由Microsoft安全更新引起的(以某种方式安装在同事的计算机而不是我的计算机上)。请参阅http://support.microsoft.com/kb/3025036
在运行该知识库文章中的补丁后,它再次起作用。