Найти в Дзене
Макрос решает

Слияние документов в Word: фильтры, условные поля и автоматизация через макросы. ЧАСТЬ 2

Слияние в Word с фильтрами и макросами: автоматизация грамот, писем и PDF. Узнайте, как использовать расширенные возможности слияния в Word: фильтры, условные поля, подстановки и автоматизацию через VBA. Примеры макросов с оформлением. Слияние документов в Word: создаём сотни грамот и писем в 3 клика. ЧАСТЬ 1 Слияние документов в Word: фильтры, условные поля и автоматизация через макросы. ЧАСТЬ 2 📌 Введение Первая часть была про базу: подключить Excel, вставить ФИО, нажать «Слияние». А теперь — настоящая мощь. 📈 Что вы узнаете в этой статье: как вставить условное поле, если нужно показывать разный текст для мужчин и женщин; как фильтровать по группе, должности, городу; как вставлять таблицы с переменными; и самое интересное — как сделать всё это одним макросом. Если вы HR, учитель, менеджер, бухгалтер или просто любите автоматизацию — сохраните эту статью сразу. 🧩 Условные поля: если… тогда… иначе… Word умеет вставлять логические конструкции прямо в текст. 📌 Пример:
"Настоящая гр
Оглавление

Слияние в Word с фильтрами и макросами: автоматизация грамот, писем и PDF. Узнайте, как использовать расширенные возможности слияния в Word: фильтры, условные поля, подстановки и автоматизацию через VBA. Примеры макросов с оформлением.

Слияние документов в Word: создаём сотни грамот и писем в 3 клика. ЧАСТЬ 1

Слияние документов в Word: фильтры, условные поля и автоматизация через макросы. ЧАСТЬ 2

📌 Введение

Первая часть была про базу: подключить Excel, вставить ФИО, нажать «Слияние». А теперь — настоящая мощь.

📈 Что вы узнаете в этой статье:

  • как вставить условное поле, если нужно показывать разный текст для мужчин и женщин;
  • как фильтровать по группе, должности, городу;
  • как вставлять таблицы с переменными;
  • и самое интересное — как сделать всё это одним макросом.

Если вы HR, учитель, менеджер, бухгалтер или просто любите автоматизацию — сохраните эту статью сразу.

🧩 Условные поля: если… тогда… иначе…

Word умеет вставлять логические конструкции прямо в текст.

📌 Пример:

"Настоящая грамота вручается учени
ку Иванову П. за участие..." А для девушек должно быть: "ученице". Вручную менять неудобно, но с помощью слияния:

  1. Переходите во вкладку «Правила»
  2. Нажимаете «Если… Тогда… Иначе…»

Пример настройки:

  • Поле: Пол
  • Сравнение: равно
  • Значение: Муж
  • Тогда вставить: ученик
  • Иначе вставить: ученица

Теперь Word сам подставит нужную форму!

📌 Как выглядит поле условно:

Нажмите Alt + F9 и вы увидите код:

{ IF «Пол» = "Муж" "ученик" "ученица" }

Можно редактировать вручную. Главное — не трогайте скобки { }, они создаются через Ctrl + F9, не вручную!

🔍 Фильтрация при слиянии

Хотите создать документы только для учеников 9 класса?

  1. Нажмите «Правила»
  2. Выберите Фильтр получателей
  3. В появившемся окне:

    — Поле: Класс
    — Условие: равно
    — Значение: 9

Теперь слияние затронет только тех, кто из 9 класса. Остальные строки — игнорируются.

📋 Добавление таблиц в шаблон

В Word можно вставить таблицу, а внутри неё — переменные.

-2

📌 Работает как обычный текст — переменные можно вставлять в ячейки.

Так делают табели, оценки, ведомости, акты.

📥 Как сохранить слияние в отдельные файлы

По умолчанию Word выводит всё в один документ. Но можно сделать так, чтобы:

📄 Каждый участник → отдельный файл
📄 С названием по фамилии
📄 В формате PDF или DOCX

Для этого — используем VBA-макросы 👇

⚙️ VBA: экспорт в отдельные файлы

Макрос ниже создаёт отдельный файл для каждой строки Excel:

Sub ExportMergedDocsToFiles()
Dim i As Integer
Dim filePath As String
Dim baseDoc As Document
Dim mergedDoc As Document
Set baseDoc = ActiveDocument
With baseDoc.MailMerge
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
.DataSource.ActiveRecord = wdFirstRecord
For i = 1 To .DataSource.RecordCount
.DataSource.ActiveRecord = i
.Execute Pause:=False
Set mergedDoc = ActiveDocument
filePath = "C:\Users\User\Desktop\Грамоты\" & .DataSource.DataFields("Фамилия").Value & ".docx"
mergedDoc.SaveAs2 filePath
mergedDoc.Close False
Next i
End With
End Sub

🖨 Макрос: автоматическая печать всех грамoт

Sub AutoPrintMergedDocs()
Dim i As Integer
With ActiveDocument.MailMerge
.Destination = wdSendToPrinter
.DataSource.ActiveRecord = wdFirstRecord
For i = 1 To .DataSource.RecordCount
.DataSource.ActiveRecord = i
.Execute Pause:=False
Next i
End With
End Sub

Запустили — и Word сразу отправил на печать всю пачку документов, поочерёдно.

📤 Слияние → PDF → Отправка

Если вы хотите не просто сгенерировать, но и отправить по почте каждому получателю — тоже можно.

В поле Excel добавьте e-mail, а Word умеет сразу отправлять результат слияния как вложение. Функция: Завершить и объединить → Отправить эл. письма

Но если вы хотите это делать массово и в PDF — лучше использовать макрос или Power Automate. Если нужно — сделаю отдельный гайд.

⚠️ Подводные камни

-3

💬 Пример: 100 грамот в PDF, по ФИО и классу

  1. Таблица Excel: Фамилия, Имя, Класс, Email
  2. Word-шаблон с переменными
  3. Макрос для генерации по фильтру
  4. Автосохранение файлов на диск
  5. При необходимости — автоотправка писем

📣 Подпишись и поделись

Если ты хочешь готовые макросы, шаблоны и практичные кейсы — подпишись на Макрос решает. А в комментариях напиши, какие шаблоны тебе нужны — я сделаю под твою задачу.

🔧 Что можно автоматизировать дальше?

– создание счетов и актов
– слияние с QR-кодами
– подстановка ссылок и динамических данных
– отправка отчётов в Teams / Outlook

Хочешь — напиши, и я подготовлю следующую часть с этими примерами.

Макрос решает

Слияние документов в Word: создаём сотни грамот и писем в 3 клика. ЧАСТЬ 1

Слияние документов в Word: фильтры, условные поля и автоматизация через макросы. ЧАСТЬ 2