KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Как создать динамический список в документе Word?

АвторSiluviaДата изменения
Пример ограничения вариантов выбора во втором раскрывающемся списке в зависимости от выбранного варианта в первом раскрывающемся списке

Как показано на снимке экрана, вы можете захотеть ограничить варианты во втором раскрывающемся списке в зависимости от выбора в первом. В этой статье рассказывается, как создать динамический список в документе Word.

Создание Динамический список в Word с помощью кода VBA


Создание Динамический список в Word с помощью кода VBA

Приведенный ниже метод VBA позволяет создать динамический список, в котором содержимое второго списка автоматически обновляется в зависимости от выбора в первом. Выполните следующие действия:

  1. Убедитесь, что вкладка «Разработчик» отображается на ленте Word (если нет, см. руководство)Как отобразить вкладку «Разработчик» в Word?). Затем вставьте два раскрывающихся списка, дважды выбрав «Разработчик» > «Устаревшие формы» > «Поле формы со списком».
    Вкладка «Разработчик» с выделенной группой «Устаревшие формы» и подсвеченным полем раскрывающегося списка
  2. Щелкните правой кнопкой мыши по первому списку со стрелками (он будет родительским) и выберите «Свойства».
    Правый щелчок по первому раскрывающемуся списку с выбранным пунктом «Свойства»
  3. В диалоговом окне «Параметры поля формы со списком»:
    1. Введите категории (например, «Фрукты», «Овощи», «Мясо») по одной в поле «Элемент списка», нажимая «Добавить» после каждой.
    2. Введите «ddfood» в поле «Закладка».
    3. Нажмите «OK».
      Диалоговое окно «Параметры поля раскрывающегося списка»
  4. Щелкните правой кнопкой мыши второй Раскрывающийся список, выберите «Свойства», введите «ddCategory» в поле «Закладка» и нажмите «OK».
    Диалоговое окно «Параметры поля раскрывающегося списка»
  5. Нажмите Alt + F11, чтобы открыть окно Microsoft Visual Basic для приложений.
  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», затем нажмите «OK».
    Диалоговое окно «Параметры поля раскрывающегося списка»
  9. Выберите «Разработчик» → «Ограничить редактирование».
    Кнопка «Ограничить редактирование» на вкладке «Разработчик» ленты
  10. На панели «Ограничение редактирования»:
    1. Установите флажок «Разрешить только такой тип правки в документе».
    2. Выберите «Заполнение форм» в раскрывающемся списке.
    3. Нажмите «Да, включить принудительную защиту».
    4. В диалоговом окне «Начать принудительную защиту» установите пароль и нажмите «OK».
      Область «Ограничение редактирования» и диалоговое окно «Начать принудительную защиту»

Теперь динамический список активен: при выборе «Фрукты» в первом списке во втором будут отображаться только фрукты.

Примеры ограничения вариантов выбора во втором раскрывающемся списке в зависимости от выбранного варианта в первом раскрывающемся списке

Лучшие инструменты для повышения продуктивности в Office

Kutools для Word — раскройте весь потенциал Word с помощью более чем 100 мощных функций!

🤖Функции KUTOOLS AI: AI Ассистент / Ассистент в реальном времени / Супер полировка (сохранить формат) / Супер перевод (сохранить формат) / Искусственный интеллект для редактирования / Проверка с помощью ИИ

📘Мастерство работы с документами: Разделение страниц / Объединение документов / Экспорт выделенного фрагмента в различных форматах (PDF, TXT, DOC, HTML и др.) / Пакетное преобразование в PDF

Редактирование содержимого: Пакетный поиск и замена в нескольких файлах / Изменение размера всех изображений / Транспонировать таблицу строк и столбцов / Преобразовать таблицу в текст

🧹Легкая очистка: удалите лишние пробелы, разрывы разделов, текстовые поля и гиперссылки. Чтобы узнать больше об инструментах удаления, перейдите в группу Удалить

Креативные вставки: вставляйте разделители разрядов, флажки, переключатели, QR-коды, штрихкоды и несколько изображений. Узнайте больше в группе Вставка

🔍Точное выделение: выделяйте определённые страницы, таблицы, фигуры и абзацы заголовков — улучшите навигацию с помощью расширенных функций выделенияfeatures

Звёздные улучшения: Переход к любому месту / Автоматическая вставка повторяющегося текста / Переключение между документами Windows / 11преобразования Инструменты

🌍Поддержка более чем 40 языков: Используйте Kutools на предпочитаемом языке — доступны английский, испанский, немецкий, французский, китайский и ещё более 40 языков!

Kutools for Word вкладки на ленте
 
 

Office Tab– Добавляет вкладки в Office и значительно упрощает вашу работу

  • Включите редактирование и чтение с вкладками в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в отдельных окнах.
  • Повышает продуктивность на 50 % и экономит сотни кликов мышью каждый день!

✨ Kutools for Office – Одна установка, пять мощных инструментов!

Включает в себя Office Tab Pro·Kutools для Excel·Kutools для Outlook·Kutools для Word·Kutools for PowerPoint

📦 Получите все 5 инструментов в одном пакете | 🔗 Бесшовная интеграция с Microsoft Office | ⚡ Экономия времени и мгновенно повысьте продуктивность

Лучшие инструменты для повышения продуктивности в Office

Kutools для Word– 100+ инструментов для Word