Статья Как выполнить подстановку однотипных данных в Word из Excel (слияние из БД)

Dragokas

Angry & Scary Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
8,030
Решения
14
Реакции
6,805
Пригодится для заполнения бланков однотипными данными для последующей их печати.
Бланк у вас создан в формате Microsoft Word.
А данные будут находиться в таблице Microsoft Excel. 1 строка на набор данных.

Запускаем MS Excel 2021 или новее:
- Создаем в первой строке названия столбцов
- Под ними заполняем нужными данными
- Сохраняем, выходим

Запускаем MS Word 2021* или новее:
- Нажмите вкладку "Рассылки" - Начать слияние - Пошаговый мастер слияния - в правом нижнем углу жмём - Далее - Далее - Обзор, выбираем xls c набором данных
- Для вставки поля, выделяем кусок текста, куда требуется подставлять данные - кнопка "Вставить поле слияния" - выбрать имя заголовка поля.
- Для отображения реальных данных вместо названия поля, жмём кнопку "Просмотреть результаты"
- Для переключения между разными наборами данных жмём на стрелочки рядом с кнопкой "Просмотреть результаты"
- Чтобы распечатать все бланки, жмём на вкладке "Рассылки" кнопку "Найти и объединить" - Печать документов. Выбираем нужные страницы.

* В более ранних версиях MS Word, таких как 2003, возможны сбои, такие как кривая интерпретация чисел (0 вместо числа, даже если оно в формате "Текст"). К примеру: число 01350192.

Подробнее в видео:
 
Последнее редактирование:
Я делаю єто в формате rtf. Там заполняемьіе данньіе замененьі на AAAA, AAAB, AAAC,... (обязаьельно английмкими).
В отдельном текстовом документе идет 1) подсказка, 2) код (AA...), 3) чем заменять, 4) пустая строка для удобства заполнения.

Например:

Фамилия
AAAA
Иванов

Год рождения
AAAB
1991

...
Затем средствами бейсика в rtf документе (как в простом текстовом докуиенте) заменяются AAAA на фамилии и т. д.
В результате, если AAAA написано в ячейке таблици, жирньім 12 шривтом таймсньюроман черного цвета, то и "Иванов" будет написано так же.
rtf открьівается вордом, его так же можно конвертировать в doc, docx, odt, pdf (сохранить как) или средствами бейстка если у вас целая папка документов.
 
@Сергій, к сожалению, не выложили ваш вариант, но я так понял, что это заполнение бланка только один раз, одним набором данных. В варианте со связью с XLS через слияние можно переключаться между данными на лету (что дает преимущество перед многостраничными документами, т.к. можно в максимальном масштабе приблизить нужное место и оценить все ли данные поместились правильно), а также можно распечатывать сразу все однотипные бланки, заполненные по-разному. Например, я так когда-то заполнял государственные бланки вкладышей к дипломам.
 
@Сергій, к сожалению, не выложили ваш вариант, но я так понял, что это заполнение бланка только один раз, одним набором данных. В варианте со связью с XLS через слияние можно переключаться между данными на лету (что дает преимущество перед многостраничными документами, т.к. можно в максимальном масштабе приблизить нужное место и оценить все ли данные поместились правильно), а также можно распечатывать сразу все однотипные бланки, заполненные по-разному. Например, я так когда-то заполнял государственные бланки вкладышей к дипломам.
Да, Вьі правьі - распечатка проблематична. Я делал актьі списания оборудования бьістрее чем их распечатьівали. Но сейчас много принтеров с двусторонней печатью - в папке правой кнопкой мьішки "печать" и..., но только до 10 документов за 1 раз.

Так или иначе, єто очень хорошо, что появляются стандартньве возможности обработки большого количества документов и другие фишки в помощь человеческому труду.
 
Назад
Сверху Снизу