Создание документов по шаблонам (из Excel в Word) + рассылка почты

Надстройка FillDocuments для MS Excel: общие сведения

Предназначение программы: заполнение множества документов данными из Excel нажатием одной кнопки.

Для работы программы требуется таблица Excel с данными для подстановки, и папка с шаблоном (шаблонами) документов.
В качестве шаблонов можно использовать файлы Word и Excel.

На выходе получаются заполненные файлы исходного формата, или формата PDF.
Возможно формирование писем по шаблону, с последующей рассылкой через Outlook или TheBAT.

Особенности программы

  • Количество шаблонов не ограничено. Вы легко можете сами настраивать любые шаблоны.
    В качестве шаблонов могут выступать файлы Excel (XLS, XLSX и др.), документы Word (DOC, DOCX и др.), а также текстовые документы (расширения TXT, DAT, XML и т.д.).
  • Гибкая настройка имён создаваемых файлов. Можно раскладывать файлы по подпапкам.
  • Подстановка таблиц и картинок (фото, печатей, подписей и т.п.) в заполняемые документы.
  • Склонение фамилий, дата и сумма прописью, — дополнительные функции обработки данных.
  • Рассылка почты (писем с вложениями) через TheBAT! или Outlook. Можно формировать красивые HTML-письма
  • Есть возможность формировать один документ по нескольким строкам исходной таблицы.
    (вывести список сотрудников в приказ, список товаров в накладную, и т.д.).
  • Можно выбирать шаблоны для заполнения в диалоговом окне
    (или даже программа будет сама брать нужные шаблоны для разных строк)
  • Подстановка данных в надписи и колонтитулы шаблонов Word.

С момента выхода программы в 2012 году, её функционал постоянно развивался (вышли десятки обновлений), поэтому сейчас в FillDocuments есть всё, что только может вам понадобиться для задачи создания документов по шаблонам.

Более подробно всё это описано в разделе Справка по программе

Видеоинструкция

На видео рассказывается о работе с программой, и показан процесс её настройки:

Подробные инструкции и описание функционала также можно найти в разделе Справка по программе

Нажатием одной кнопки, эта программа вам позволит:

  • заполнить и распечатать договор купли-продажи и акт выполненных работ всего за пару секунд
  • подготовить приказы, уведомления и доверенности по таблице с данными сотрудников
  • разослать персонифицированные коммерческие предложения или приглашения по почте
  • подготовить договоры и акты по шаблонам, и сразу вывести их на печать
  • сделать красивые грамоты по различным шаблонам, и сохранить результат в виде ПДФ файлов
  • распечатать несколько накладных или заявок на товар в формате Excel по одной исходной таблице (прайсу)
  • заполнять командировочные удостоверения, инструкции, соглашения, или любые другие однотипные документы

Как скачать и протестировать программу

Комментарии

Доброго времени суток.
У меня такая задача стоит. У меня юридическая компания которая оказывает помощь заемщикам по спорам с банковскими учреждениями.
Имеется клиент у которого есть кредиты в нескольких банках (в среднем 15). Я должен два раза в месяц направлять письма в каждый банк клиента. И так на протяжении 10 месяцев. В итоге получается 20 писем. Шаблоны имеются. В них меняются ФИО клиента, адрес проживания клиента, номер и дата договора, сумма кредита, процентная ставка, номер расчетного счета, полное наименование банка, адрес банка,краткое наименование банка, ИНН банка, ОГРН банка.
Возможно ли сделать программу такую?

Игорь, здравствуйте.

Может быть добавите винительный падеж в надстройку. Часто есть потребность в нем.

Выделите ячейки в нескольких строках. Формирование происходит по количеству выделенных строк.

У меня появилась проблема.

У меня в базе эксель есть такие столбцы

Компания
Должность
ФИО
Фамилия
Имя
Отчество

Но отчество не всегда есть.
Когда я нажимаю сформировать файл, то он формирует только 1 файл по первой строке.

Так уже после закрытия документа выполнится. А надо до закрытия.

Если вы создадите в файле Excel макрос с именем FillDone - он запустится автоматически

Игорь, пригодилась бы возможность после замены всех полей в файле перед закрытием файла выполнить какой-нибудь сторонний макрос. Допустим таблицы отформатировать в вордовском файле.

Для шаблонов Excel - режим Multirow реализован давно:
http://excelvba.ru/programmes/FillDocuments/MultiRow/Group

Не реализовано только для текстовых файлов (txt)
Стоимость доработки, - около 1000 руб.

Скажите цена вопроса какова за доработку, и еще возможно ли тоже и в *.xls

Здравствуйте
Это возможно реализовать в программе, - но я не делал, поскольку спроса на подобную функцию нет (за несколько лет никто не просил для txt такое сделать).
Если готовы оплатить доработку, - могу заняться.

Доброго времени! Скажите, в режиме Multirow формируется в (*.doc) в несколько строк без проблем.Мне необходимо что бы в (*.txt) тоже формировалось так же построчно. Это возможно, если да, то как то будет реализовано? Спасибо.

ОГРОМНОЕ СПАСИБО ВАМ!!!!! У меня все получилось, все легко и просто оказалось:)

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

2. Можно на выходе получать файл Excel, — но для этого и шаблон должен быть в формате Excel
Но вывод - только в отдельный файл (в исходную таблицу вывод никак не осуществить).
Сформированные по шаблонам файлы Excel можно объединить в один файл (есть такая опция в настройках, на вкладке ДОПОЛНИТЕЛЬНО)

3. Нет, доступ к исходному коду закрыт и после покупки. Там сложный код (из-за универсальности), в котором я сам порой путаюсь (т.к. давно делал)
Даже если вы получите доступ к коду - вряд ли вы сможете там что-то исправить.
В любом случае, вам проще сформировать документ штатными средствами программы, а потом запустить макрос, который доделает то, что вам необходимо (например, переместит лист из созданного файла в исходный файл Excel)
Кстати: если вы назовёте макрос FillDone — то он выполнится автоматически, после формирования документов.

Здравствуйте.

1. Если у меня несколько шаблонов с разными вариациями по отправке, то.
Я поработал в одном - открываю другой, а все настройки по отправки email, прикреплению файлов и т.п. - прежние.
Можно создать и сохранить некие профили настроек под разные шаблоны?

2. Можно ли выходной файл получать не в ворде, а, например, в том же Екселе. Или даже в том же файле, создавая еще один лист. БД -> шаблон -> сформированный бланк на новом листе.

3. Дурацкий вопрос. Вообще, покупка лицензии дает доступ к коду? Чтобы может быть какой-то нюанс подправить под себя.

Да, только если шаблон формата Excel
Если шаблон формата Word - там формулы не работают, потому просклонять фамилию надо в исходной таблице Excel (формулой), и для подстановки использовать уже результат склонения.

Здравствуйте. Скажите макрос предусматривает автоматическое склонение фамилий в шаблон?

Xamid, моя надстройка не переносит данные из одного файла Word в другой.
Если же вы будете вносить данные не напрямую в файлы Word, а в базу данных в виде файла Excel, - то заполнить все 3 файла Word можно будет нажатием одной кнопки

Вы имеете ввиду, что заполняете первый файл Word из Excel? Тогда этот вопрос сюда.

Если же вы хотите просто, заполняя первый документ Word, автоматически заполнять и другие два документа, то это не для этой надстройки вопрос.

Добрый день!
Подскажите пож.:
Есть три документа в файле word ,данные которые вносятся в первый файл есть и в других двух документах.
Как сделать так ,чтобы строки которые заполняю в первом документе автоматически заполнялись в двух других файлах с идентичными строками?
Т.к.в двух других файлах имеются строки с информацией которую я ввожу в первом файле.

Здравствуйте, Георгий.
В программе нет такой возможности (брать картинку с листа исходной таблицы)

Добрый день стоит такая задача: в ручную формируется документ excel, в нем есть ячейка в которой по условию выставляется нужная картинка. Далее нажимается кнопка и происходит экспорт данных в шаблон Word. Вопрос: как сделать так чтобы и картинка !!!нужная экспортировалась!!! в шаблон в нужное место.

Потому что мои программы несовместимы с Mac. И не будут совместимы.
В разделе FAQ всё подробно описано: http://excelvba.ru/faq/system_requirements

На Ofice для mac не работает :(
В самом начале выскакивает "ошибка компиляция..."

Добрый день в форуме я не нашёл ответа. У меня появилась проблема в начале все работало достаточно быстро а потом на одном м из мест один документ формирует примерно 2 мин что это может быть?

Здравствуйте, Алексей.

все эти строки заполняются данными из первой строки, но данная проблема решается перезагрузкой компьютера

Увы, тут подсказать ничего не могу
Если бы проблема была постоянной, - можно было бы поискать причину в настройках, или в самой программе.
А в вашем случае, - проблема или в Excel (работа буфера обмена, или настройки программы Excel), или в Windows (раз лечится перезагрузкой)

В режиме Multirow, происходит размножение строки (содержащей метку «Multirow») путём обычного копирования.
Т.е. в цикле 10 раз строка копируется, и после каждого копирования в новой строке меняется символ # на номер копии.
Потом исходная строка удаляется.
В результате должны из строки с кодом {КодПоля#} получиться строки с кодами {КодПоля1}, {КодПоля2}, {КодПоля3}, ... {КодПоля10}
В вашем случае, судя по всему, после первого успешного копирования из {КодПоля#} в {КодПоля1}, продолжает копироваться не исходная строка с {КодПоля#}, а новая строка {КодПоля1} — в результате, на выходе получается 10 строк в кодом {КодПоля1}
Причина может быть как в самом Excel (что-то в настройках, или глюк в программе), так и в некорректно установленной метке «Multirow»
(эта метка должна быть присвоена одной строке, выделенной полностью)

Попробуйте на других компах, — если там всё будет работать как надо, без сбоев, — значит, надо установить другую версию Excel (рекомендую Excel 2010)

когда следом формируются doc в прогресс-баре отображается ошибка "Слишком длинный строковый параметр"

Не обращайте внимания на эту ошибку. Устраню в следующих версиях.
Эта ошибка никак не влияет на заполнение документов в вашем случае.

doc по времени формируется также как и xls хотя в doc функция multirow не используется

Это недостаток алгоритма программы (когда я делал функцию Multirow, ей пользовались 1-2 пользователя, и она обрабатывала небольшие блоки строк).
Дело в том, что программой формируется список замен вида {КодПоля} -> ЗначениеПоля (количество элементов равно количеству столбцов исходной таблицы)
В режиме «Multirow» этот список замен во много раз больше, т.к. там, помимо вышеуказанного списка полей, присутствуют поля режима Multirow вида {КодПоля1} -> ЗначениеПоля1, {КодПоля2} -> ЗначениеПоля2, и т.д. до {КодПоля800} -> ЗначениеПоля800 (в вашем случае для 800 строк)

И при подстановке в документ, моя надстройка выполняет ВСЕ замены из этого списка (независимо от того, присутствует ли в шаблоне код {КодПоля800} — программа всё равно применит к шаблону команду «Заменить {КодПоля800} на ЗначениеПоля800»)
Эти замены, хоть ничего в файле шаблона и не меняют, — но занимают очень много времени (особенно в случае с Word, и тем более, если в настройках включена опция подстановки в надписи и колонтитулы Word)

Правильнее было бы выполнять только те замены, коды полей которых встречаются в шаблоне (предварительно составив список используемых кодов полей из шаблона).
Это позволило бы многократно ускорить заполнение документов в вашем случае.
Постараюсь реализовать в следующих версиях программы (там много переделывать надо)

Возможно ли реализовать возможность "Профилей" для настроек программы

Да, возможно.
В других моих программах (типа надстройки Lookup) — это уже реализовано:
http://excelvba.ru/programmes/Lookup/settings
В этой программе (FillDocuments) пока такой возможности нет, но в следующих версиях планируется.

Доброго времени суток! Игорь подскажите, во первых почему иногда при формировании файлов в ecxel-е с использованием функции multirow при наличии допустим 10 строк, все эти строки заполняются данными из первой строки, но данная проблема решается перезагрузкой компьютера.
Во вторых мне приходится одновременно формировать doc и xls файлы из одной исходной таблицы, в xls формируются файлы с большим количеством строк (примерно до 800 строк) это занимает приличное количество времени, но вот когда следом формируются doc в прогресс-баре отображается ошибка "Слишком длинный строковый параметр" и doc по времени формируется также как и xls хотя в doc функция multirow не используется.
Ну и напоследок)) Возможно ли реализовать возможность "Профилей" для настроек программы ну или как то по другому решить этот вопрос, у меня допустим разные исходные таблицы с разным количеством столбцов и формировать мне надо разные файлы с непохожими именами, постоянно приходится менять маску имен и значение последней заполненной строки.
Заранее Спасибо!

Спасибо большое!

А зачем мне это?
Украшательств можно много всяких понавешать, - но программа от этого лучше не станет.
Ни в одном серьезном программном продукте (Windows, Office, и т.д. и т.п.) самозакрывающиеся msgbox не используются, - значит, не особо-то это и нужно...

Игорь, я не хотели бы применить наработку vbaшных коллег msgbox с закрытием через время? http://www.cyberforum.ru/vba/thread713645-page3.html#post5874942 . Удобно, сообщения сами выпиливаются через заданное время.

Спасибо, что обратили внимание на ошибку.
Да, это глюк программы (появился при обновлении сайта), — картинки не все скачивались, потому следующая кнопка не становилась активной.
Исправил ошибку, — скачайте заново программу с сайта, всё будет работать.

PS: Инструкцию можно просматривать сколько угодно раз, — она доступна через меню ДОПОЛНИТЕЛЬНО - ПОКАЗАТЬ КРАТКУЮ ИНСТРУКЦИЮ ПО ПРОГРАММЕ
-----------
Этот комментарий относится к другой программе — "вставка картинок из папки": http://excelvba.ru/programmes/PastePictures