Надстройка для заполнения документов данными из Excel (из 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 по одной исходной таблице (прайсу)
  • заполнять командировочные удостоверения, инструкции, соглашения, или любые другие однотипные документы

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

Комментарии

8 июня 2014 г. в 07:22 стало доступно обновление программы «FillDocuments» (версия 2.3.0).

Изменения в новой версии программы:

+ добавлена возможность задавать список заполняемых шаблонов для каждой строки исходной таблицы

+ реализована вставка изображений из заданной папки в шаблоны Word

+ обновлена форма настроек программы

Рекомендуем обновить программу до последней версии!

Видеоинструкции по расширенным возможностям пока нет
На днях выпущу новую версию программы, и сразу займусь видео.

Не смогла найти видео о рассылке и расширенных возможностях, дайте, пожалуйста, ссылку на него. Благодарю

Барнс, таблица вставляется на место абзаца с тегом типа {Таблица}
Вот какое форматирование имеет этот абзац (выравнивание, отступы), - такое получит и вставляемая таблица
Поэкспериментируйте с форматированием строки, содержащей тег {Таблица} - должно всё получиться.

К примеру, такие параметры применить во время вставки к таблице:
with ActiveDocument.Tables
.Spacing = 0
.TopPadding = 0
.BottomPadding = 0
.LeftPadding = 0
.RightPadding = 0
.Rows.Alignment = wdAlignRowCenter
end with

Спасибо за ответ.

А возможно ли попутно задать форматирование самой вставляемой таблице при вставке с форматированием excel или word? (то же выравнивание, которое по умолчанию идет по левому краю; поля ячеек)

Здравствуйте, Барнс
Возможно, у вас что-то лишнее в плане форматирования и стилей сохранено в настройках Word, или в используемом шаблоне.
(поскольку у других пользователей таких проблем не было)
Что именно искать в Word - не могу подсказать (я в этом плохо разбираюсь)
Первым делом, посоветую создать шаблон документа «с нуля» (пустой файл), и попробовать на нём (вставив в чистый документ только код поля {Таблица})

Ну и есть в моей программе другие варианты вставки: с исходным форматированием, в виде картинки, и т.п., - эти варианты пробовали?

Странная тема с вставкой таблиц (used range) в документы ворд: вставляются в виде скрытого текста. Если для таблицы очистить формат (сбросить форматирование) и снова установить нужное - все нормально. С этим как-то можно побороться или каждый раз при изменении в таблице придется проделывать махинации с форматированием?

ясно, ответил уже хорошо
p.s. для любителей заполнять в ручную есть замечательно работающие бесплатные скрипты

Мои программы работают только в Excel
OpenOffice не поддерживается (в ближайшие несколько лет точно под него ничего делать не буду, - невыгодно, т.к. пользователей очень мало)
Если Microsoft Office не нравится, - всегда есть возможность заполнять документы вручную.

что насчет опен офиса?
мне не нравиться мелкийсофт.

Евгений, формулы — они, вообще-то, для Excel...
Моя надстройка содержит формулы (функции) для Excel, - на в файлах Word, ни в файлах JPG, ни в текстовых файлах, эти формулы работать не будут...

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

Мой шаблон в Word`е

Поскольку функция встроена в мою надстройку, - она работает только тогда, когда запущена надстройка (FillDocuments)

Можно вставить формулу и в шаблон, - но, если вы хотите. чтобы в сформированном документе не отображалась ошибка в формуле, когда созданный документ откроют на компе, где нет моей надстройки, - включите опцию «в сформированных документах Excel, заменять формулы значениями»
В этом случае, после формирования документа по шаблону, все формулы пересчитаются, и заменятся значениями.
В момент формирования файла формула =ФамилияИО() точно будет работать - т.к. надстройка запущена.

Функция =ФамилияИО(B32) работает только в исходной таблице с данными ?
Если ее вставить в шаблон, она не работает.

Здравствуйте, Евгений
На сайте проводились технические работы, - теперь снова все должно открываться.

Ссылки с инструкциями перестали работать

А вы перейдите на страницу оплаты, пролистайте страницу вниз, - там есть вся необходимая информация:
http://excelvba.ru/buy/addin?name=FillDocuments

Здравствуйте, хотели бы приобристи программу на юр.лицо. И оплатить по б/н расчету, как это сделать?

Здравствуйте, Дмитрий.
Не совсем понял, какое отношение ваш вопрос имеет к моей программе.

В Excel перенос внутри ячейки задается символом с кодом 10, как вы и написали (вводится нажатием Alt + Enter)
Как моя программа вставит этот перенос в Word, - тут есть несколько вариантов.
Нужный режим выбирается в настройках программы, на вкладке «Дополнительно» (там есть выпадающий список с вариантами, - попробуйте все варианты, какой-нибудь да подойдёт)

А если ваш вопрос касательно Excel - как сделать отступ после перевода строки, - так это можно сделать пробелами
(символ табуляции - СИМВОЛ(9) в Excel не работает):

="    "&"Первая строка текста"&СИМВОЛ(10)&"    "&"Вторая строка текста"

или же при помощи формата ячейки (параметр ОТСТУП ОТ ЛЕВОГО КРАЯ)

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

Подскажите, имеется ли возможность формулой или макросом задать красную строку внутри одной ячейки?

Символ(10) дает мягкий перенос, символ(182) не работает в ворде, точнее как символ вставляется.

Чтобы в связке типа - Текст1 & символ(10) & Текст2

обе части с красной строки вставлялись из одной ячейке - такое возможно?

Здравствуйте, Magbit

Можно отправлять файлы на печать выборочно.
Достаточно выключить режим вывода на печать в настройках программы (это общие настройки для всех шаблонов),
а в имена шаблонов, которые надо распечатывать, поставить метку {print} или {print=2},
например, переименовать шаблон Договор.doc в Договор{print=2}.doc

Подробнее - в инструкции по настройке имён файлов (см. в самом конце инструкции)

А вот чтобы принтер задать для каждого шаблона, - такого пока нет (и не планируется)

Игорь, с проблемой разобрался, оказалось что файл выходил за границу печати а сообщение об этом вылезти не могло, подвинул файл, все норм =) Прога спасает постоянно, еще раз огромное СПАСИБО! надеюсь скоро выйдут обновления!
Еще хотел сказать, что было бы удобнее, если бы каждому шаблону соответствовали отдельные настройки (например один док мне нужен в электронном виде, остальные нужно выводить на печать). Конечно жиру бешусь, но это было бы простом супер!(иногда забываю снять галку и на печать отправляется не то что нужно). А если бы каждому файлу по умолчанию можно было бы задать принтер с которого бы печать пошла, мммм... но это уже из обл фантастики...
А так СПАСИБО!

Здравствуйте, Фьюри.
Разница в скорости подстановки, - из-за различий в алгоритме поиска и замены.
Для подстановки значений в документ используется штатная функция поиска и замены (вручную запускается нажатием Ctrl + H)

' обычная быстрая замена
doc.Range.Find.Execute key$, False, , False, , , , , , txt$, 2

Если же надо подставлять текст в колонтитулы, надписи, и прочие объекты, - необходимо в цикле перебирать все области документа, - а это увеличивает время:

' расширенная замена
For Each myStoryRange In doc.StoryRanges
    myStoryRange.Find.Execute key$, False, , False, , , , , , txt$, 2
    While Not (myStoryRange.NextStoryRange Is Nothing)
        Set myStoryRange = myStoryRange.NextStoryRange
        myStoryRange.Find.Execute key$, False, , False, , , , , , txt$, 2
    Wend
Next myStoryRange

Игорь, а почему настолько дольше получается с подстановкой в колонтитулы, где-то раз в 5?

Здравствуйте, Magbit.
Мой ник в скайпе: ExcelVBA.ru
он указан на странице "Контакты"

Звоните в скайп, разберемся

Здравствуйте, Игорь!
приобрел вашу программу, очень помогает в деле, отличная работа! Но есть один нюанс, с которым не получается разобраться. если файл ворд содержит таблицу (пытаюсь заполнить платежку с реквизитами для сбербанка) она подвисает и ничего не происходит. не знаю вашего скайпа, на сайте не нашел. это нужно очень срочно, а копировать вручную не вариант, данных очень много. прошу помочь с данной проблемой, пример исходной таблицы и платежки могу выслать, скажите куда. заранее благодарю!

Здравствуйте, Кристина
Такого быть не должно, если вы системное время назад или вперед не переводили, пытаясь обойти ограничение программы.
А если пытались таким образом обойти защиту программы, - увы, тестовый период заново не активировать. (просто на другом компе поэкспериментируйте, только уже без перевода системных часов)

Игорь, добрый день,
Я скачала программу, активировала демо-версию, которая должна была снять ограничения на 48 часов. Примерно через час, после перезапуска, выдается сообщение "Превышено время бесплатного использования программы"..

Я могу все же потестировать программу эти два дня?
Спасибо заранее.

Ну так позвоните в скайп (или на почту напишите), что за доработка требуется.
Что-нибудь придумаем...

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
CAPTCHA
Подтвердите, пожалуйста, что вы - человек:
  _   _   __  __   ____    ____    ____    _     
| | | | | \/ | / ___| | __ ) / ___| | |
| | | | | |\/| | \___ \ | _ \ \___ \ | |
| |_| | | | | | ___) | | |_) | ___) | | |___
\___/ |_| |_| |____/ |____/ |____/ |_____|
Введите код, изображенный в стиле ASCII-арт.