我已经浏览了许多教程和指导视频,试图实现我的预期结果,即简单地允许表单中的复选框在选中时隐藏内容,或者在取消选中时重新显示内容,但似乎没有工作。
当前,我已经为要隐藏的内容创建了一个书签,并尝试使用以下语句在VBA中将其命名为
:Private Sub CheckBox1_Click()
ActiveDocument.Bookmarks("bookmark").Range.Font.Hidden = CheckBox1.Value
End Sub
尽管如此,选择此复选框对内容没有影响。
还有其他我想念的东西吗(我正在使用Microsoft Word 2013)。
答案 0 :(得分:1)
您的代码在测试时运行良好,但由于从未遇到过Word VBA中的用户表单/复选框,我遇到了一些问题,我怀疑您可能也有同样的想法。
例如,我做的第一件事是创建Insert --> Module
。这是不正确的。您想要做的是Insert --> Userform
,然后将checkbox
上的ToolBox
拖到
https://smallbusiness.chron.com/use-check-boxes-word-54673.html
然后双击复选框以显示将要运行的“模块”,请注意侧窗格中没有模块!编辑模块,然后返回到用户表单,然后按F5
。应该为您提供一个复选框,该复选框将隐藏/取消隐藏您的文本。
这是我的模块:
Public Sub CheckBox1_Click()
ActiveDocument.Bookmarks("bookmark").Range.Font.Hidden = CheckBox1.Value
End Sub
这是一张图片:
注意:我没有测试过如何在doc一词中插入复选框,我将为您提供一些学习知识!
更新:
此子项将使CheckBox在运行时出现,但是我不确定您将使用该逻辑来调用它,也许是诸如打开文档之类的事件?
Sub Loadform()
Load UserForm1
UserForm1.Show
End Sub
这可以通过键盘快捷键或事件来调用,但这将导致“弹出窗口”。如果您想要一个通知复选框,则可能需要使用此旧表格/复选框进行调查。我从上面跟踪了URL,但我认为它已过时。
更新:
您也可以轻松地将其添加到工具栏,但这并不是您想要的。我发现最好的方法是使用“域代码”,请参阅-> https://word.tips.net/T001571_Assigning_a_Macro_to_a_Button_in_Your_Text.html
我可以通过按CTRL + F9
然后键入{ MacroButton Loadform ClickMe}
然后单击此文本来使其工作。这可能是最好的选择,因为使用图像似乎不是一个好主意。.(https://answers.microsoft.com/en-us/msoffice/forum/all/using-graphic-with-macrobutton/a9c1ef3b-cf1f-48ba-92a8-c44bffcdc131)&(http://www.addbalance.com/usersguide/parts/macrobutton_fields.htm#Different_behavior)
Gif示例: