我想用VBA对用户表单进行编程,这样就可以简单的通过宏,对这些人进行操作。我在网上看了很多,也试了很多,但是所有的解决方案都出现了错误。根据代码的不同,错误也不同。先谢谢大家的帮助!这个宏是Word的。
我的代码。
Dim UserForm1 As Object
Set UserForm1 = ThisWorkbook.VBProject.VBComponents.Add(3)
With UserForm1
.With = 400
.Height = 300
End With
首先,你需要改变宏设置。然后,你需要在你的代码做小的调整。
步驟1: 启用VBA项目访问
Open your workbook
Go to File > Options > Trust Center
Click on Trust Center Settings...
Under Macro Settings, make sure Trust access to the VBA project object model is checked.
第2步:不要直接指定宽度和高度,而是使用.properties。 不要直接指定宽度和高度,而是使用.properties来指定。
Sub test()
Dim UserForm1 As Object
Set UserForm1 = ThisWorkbook.VBProject.VBComponents.Add(3)
With UserForm1
.Properties("Caption") = "New Form"
.Properties("Width") = 300
.Properties("Height") = 270
End With
End Sub
EDIT: 以上代码仅在Excel中有效。对于word文档,请删除这一行 Set UserForm1 = ThisWorkbook.VBProject.VBComponents.Add(3)
并加 Set UserForm1 = ActiveDocument.VBProject.VBComponents.Add(3)