跳至主要内容

如何在Word文档中创建关联的下拉列表?

Author: Siluvia Last Modified: 2025-07-31
Example showing limiting the choices in the second drop-down list based on the selected option in the first drop-down list

如截图所示,您可能希望根据第一个下拉列表中的选择来限制第二个下拉列表中的选项。本文将向您展示如何在Word文档中创建关联的下拉列表。

使用VBA代码在Word中创建关联的下拉列表


使用VBA代码在Word中创建关联的下拉列表

以下VBA方法可以帮助您创建一个关联的下拉列表,其中第二个列表会根据第一个列表中的选择而变化。请按照以下步骤操作:

  1. 确保“开发工具”选项卡在您的Word功能区中可见(如果不可见,请参阅教程 如何在Word中显示“开发工具”选项卡?)。然后通过点击“开发工具”>“旧式窗体”>“下拉窗体域”两次来插入两个下拉列表。
    Developer tab with Legacy Forms selected and Drop-Down Form Field highlighted
  2. 右键单击第一个下拉列表(这将是父列表),然后点击“属性”。
    First drop-down list right-clicked with Properties option selected
  3. 在“下拉窗体域选项”对话框中:
    1. 将类别(例如,“水果”,“蔬菜”,“肉类”)逐一输入到“下拉项”框中,并在每次输入后点击“添加”。
    2. 在“书签名称”框中输入“ddfood”。
    3. 点击“确定”。
      Drop-down Form Field Options dialog box
  4. 右键单击第二个下拉列表,选择“属性”,然后在“书签名称”框中输入“ddCategory”,点击“确定”。
    Drop-down Form Field Options dialog box
  5. Alt + F11 打开 Microsoft Visual Basic for Applications 窗口。
  6. 在VBA窗口中,点击“插入”>“模块”,然后粘贴以下代码:
    Sub Populateddfood()
    'Update by Extendoffice 2018/10/25
        Dim xDirection As FormField
        Dim xState As FormField
        On Error Resume Next
        Set xDirection = ActiveDocument.FormFields("ddfood")
        Set xState = ActiveDocument.FormFields("ddCategory")
        If ((xDirection Is Nothing) Or (xState Is Nothing)) Then Exit Sub
        With xState.DropDown.ListEntries
            .Clear
            Select Case xDirection.Result
                Case "Fruit"
                    .Add "Apple"
                    .Add "Banana"
                    .Add "Peach"
                    .Add "Lychee"
                    .Add "Watermelon"
                Case "Vegetable"
                    .Add "Cabbage"
                    .Add "Onion"
                Case "Meat"
                    .Add "Pork"
                    .Add "Beef"
                    .Add "Mutton"
            End Select
        End With
    End Sub

    注意:

    • 在代码中,更改每个“Case”语句下的项目以适应您的内容。
    • ddfood”和“ddCategory”必须与您在“下拉窗体域选项”对话框中输入的书签名称匹配。
  7. 保存代码并返回到您的文档。
  8. 再次右键单击第一个下拉列表并选择“属性”。在出现的“下拉窗体域选项”对话框中,从“退出”下拉列表中选择宏名称“Populateddfood”,然后点击“确定”。
    Drop-down Form Field Options dialog box
  9. 点击“开发工具”>“限制编辑”。
    Restrict Editing button on the Developer tab on the ribbon
  10. 在“限制编辑”窗格中:
    1. 勾选“仅允许在文档中进行此类编辑”。
    2. 从下拉列表中选择“填写窗体”。
    3. 点击“是的,开始强制保护”。
    4. 在“开始强制保护”对话框中,设置密码并点击“确定”。
      Restrict Editing pane and Start Enforcing Protection dialog

现在,关联的下拉列表已激活。当您在第一个列表中选择“水果”时,第二个列表中只会显示水果选项。

Examples showing limiting the choices in the second drop-down list based on the selected option in the first drop-down list

最佳Office办公效率工具

Kutools for Word -通过超过100项强大功能全面提升您的Word体验!

🤖 Kutools AI功能AI助手 / 实时助手 / 超级润色(保留格式)/ 超级翻译(保留格式)/ AI遮挡 / AI校正……

📘 文档大师翻页 / 文档合并 /选区多格式导出(PDF/TXT/DOC/HTML等)/ 批量转换为PDF……

内容编辑跨多个文件批量查找与替换 / 全部图片大小调整 / 翻转表格行和列 / 表格转文本……

🧹轻松清理:一扫而空多余空格 / 分节符 / 文本框 / 超链接 / 更多清除工具请前往清除所有功能组……

创意插入:插入千位分隔符 /复选框 /选项按钮 / 二维码 / 条形码 / 多张图片 / 更多请探索插入功能组……

🔍 精准选取:精准锁定指定页码 / 表格 / 形状 / 标题段落 /通过更多 选取 功能提升导航体验……

明星增强一键定位任何位置 / 自动插入重复文本 / 在文档窗口间快速切换 /11 转换工具……

🌍 支持40+种语言:Kutools支持您的本地语言 — 英语、西班牙语、德语、法语、中文等40多种语言均适用!

Kutools and Kutools Plus tabs on the Word Ribbon
👉 想体验这些强大功能?立即下载Kutools for Word!🚀
 

最佳Office办公效率工具

Kutools for Word - 100+ Word工具