我如何在VBA(Word)中用代码创建一个UserForm?

问题描述 投票:0回答:1

我想用VBA对用户表单进行编程,这样就可以简单的通过宏,对这些人进行操作。我在网上看了很多,也试了很多,但是所有的解决方案都出现了错误。根据代码的不同,错误也不同。先谢谢大家的帮助!这个宏是Word的。

我的代码。

    Dim UserForm1 As Object

Set UserForm1 = ThisWorkbook.VBProject.VBComponents.Add(3)

With UserForm1
    .With = 400
    .Height = 300
End With
vba ms-word word-vba
1个回答
0
投票

首先,你需要改变宏设置。然后,你需要在你的代码做小的调整。

步驟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)

© www.soinside.com 2019 - 2024. All rights reserved.