用户窗体错误:对象'_VBComponent'的方法'Properties'失败



我想用代码在 VBE 中编辑我的用户表单对象。

当我使用以下内容时,我收到一个错误,如帖子标题所示:

Sub myTest()
ThisWorkbook.VBProject.VBComponents("UserForm1").Properties("Caption") = "myCaption"
End Sub

我尝试将"标题"更改为"标题",同样的错误。当我尝试设置WidthHeight属性时,也会发生此错误,并不总是在第一次,而是当我再次运行代码以调整大小时。

编辑 1: 启用宏设置中的"信任对 VBA 项目对象模型的访问"。

编辑 2: 创建新工作簿和用户窗体时不会发生错误。在已发生错误的工作簿中重新创建用户窗体时,确实会发生这种情况。

编辑3: 在之前添加Unload UserForm1Set UserForm1 = Nothing无济于事。

编辑4: 对于新工作簿,如果我创建用户窗体并从模块运行此代码,但在右键单击用户窗体 -> 视图对象后,则会出现错误:"无法将焦点移动到控件,因为它不可见、未启用或类型不接受焦点。当我确认时,在连续的宏运行中,我收到一个错误,如帖子标题所示。

编辑5: Excel 2010 和 2016 上也会发生同样的情况。

可以简单地尝试一下

Sub myTest()
ThisWorkbook.VBProject.VBComponents("UserForm1").Activate
ThisWorkbook.VBProject.VBComponents("UserForm1").Properties("Caption") = "myCaption"
End Sub

它正在Excel 2007中工作,并期望在任何版本中工作。 可以将用户表单导入 VBComponents 属性后,请参阅我的回答以发布

相关内容

最新更新