如何在Microsoft Word中制作带下拉列表的标题,且选择不同选项时文本自动变更?
如何在Microsoft Word中制作带下拉列表的标题,且选择不同选项时文本自动变更?
嘿,这个需求我刚好帮别人解决过,其实用Word自带的功能就能搞定,不用额外装插件,一步步来就行:
第一步:调出「开发工具」选项卡(如果没显示的话)
右键点击Word顶部工具栏的空白区域,选择「自定义功能区」,在弹出的窗口里勾选左侧的「开发工具」,点确定就能看到这个选项卡了。第二步:插入下拉列表内容控件
切换到「开发工具」选项卡,找到「控件」组里的「下拉列表内容控件」(就是那个带小箭头的灰色方框),点击它,就能在光标位置插入一个下拉控件。
接着点击控件旁边的「属性」按钮,在弹出的面板里点击「添加」,输入你想要的下拉选项(比如“项目A”“项目B”“项目C”),每个选项添加好后,记得给这个控件设置一个标签名称(比如MyChoice,后面要用到),最后关闭属性面板。第三步:用IF域实现文本动态变更
把光标移到你想要显示动态文本的位置(可以是下拉控件旁边,也可以是文档里的任意地方),按Ctrl + F9插入域代码的大括号(注意别手动打括号,必须用快捷键才有效)。
在大括号里输入类似这样的代码:IF {CONTENTCONTROL "MyChoice"} = "项目A" "这是选择项目A时显示的文本" "IF {CONTENTCONTROL "MyChoice"} = "项目B" "这是选择项目B时显示的文本" "这是选择其他选项时显示的默认文本"}输入完后按
F9更新域,现在你点击下拉控件选不同选项,再按F9就能看到文本跟着变了。第四步:设置自动更新(不用每次手动按F9)
如果觉得每次选完还要按F9太麻烦,有两种方法:- 简单版:右键点击域代码,选择「编辑域」→「选项」,勾选「在打印前更新」和「在打开文档时更新」,这样打开文档或打印时会自动更新,但选完选项还是要手动刷新一下(或者按
F9)。 - 自动实时更新版:用宏来实现。切换到「开发工具」→「Visual Basic」(或按
Alt + F11),在左侧找到你的文档,右键→「插入」→「模块」,粘贴下面的代码:
然后把文档保存为「启用宏的Word文档」(格式是Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean) If ContentControl.Tag = "MyChoice" Then ActiveDocument.Fields.Update End If End Sub.docm),这样以后每次选完下拉选项,文本会自动更新,不用手动操作啦。
- 简单版:右键点击域代码,选择「编辑域」→「选项」,勾选「在打印前更新」和「在打开文档时更新」,这样打开文档或打印时会自动更新,但选完选项还是要手动刷新一下(或者按
备注:内容来源于stack exchange,提问作者MS word me




