Почтовая рассылка
Постановка задачи
Имеем таблицу в Microsoft Excel, в которой хранится информация о ключевых клиентах нашей компании (адреса эл.почты, имена, названия компаний и т.д.), которых мы хотим поздравить с очередным праздником.
Поздравлять будем при помощи простого, но трогательного сообщения, содержащего имя клиента и название его компании. Причем все надо сделать так, чтобы получатель (не дай бог!) не подумал, что письмо сделано автоматически, а был уверен, что письмо было кропотливо написано ради него вручную.
В конце все созданные сообщения надо:
- либо отправить через Outlook каждому клиенту на его e-mail
- либо распечатать для последующей отправки обычной почтой
- либо закинуть в новый файл, где каждое письмо будет отдельным листом (разделом)
В терминах Microsoft Office такая процедура называется Слиянием (Mail Merge). Поехали...
Подготовка списка клиентов в Excel
Таблица со списком клиентов для рассылки должна удовлетворять нескольким простым условиям:
- Шапка таблицы должна быть простой - одна строка с уникальными названиями столбцов (без повторений и пустых ячеек).
- В таблице не должно быть объединенных ячеек.
- В таблице не должно быть пустых строк или столбцов (отдельные пустые ячейки допускаются).
Если планируется отправка по электронной почте, то, само-собой, в таблице должен быть столбец с адресами получателей.
Поскольку Excel и Word не смогу сами определить пол клиента по имени, то имеет смысл сделать отдельный столбец с обращением (господин, госпожа и т.п.) или с родовым окончанием (-ый или -ая) для обращения "Уважаемый(ая)..." Как вариант, возможно полуавтоматическое определение пола в зависимости от окончания отчества ("а" или "ч"), реализованное функцией ПРАВСИМВ (RIGHT).
В новых версиях Microsoft Excel 2007/2010 для таких таблиц очень удобно использовать инструмент Форматировать как таблицу (Format as Table) с вкладки Главная (Home). Подробнее про такие "умные таблицы" можно почитать тут.
Создаем сообщение в Word и подключаем Excel
Открываем новый пустой документ в Microsoft Word и набираем туда текст нашего сообщения, оставляя в нем пустые места для будущей вставки имени клиента и его компании.
Потом запускаем пошаговый Мастер Слияния на вкладке Рассылки (Mailings) кнопкой Начать слияние (Start Mail Merge) – Пошаговый мастер слияния (Step-by-Step Merge Wizard):
В Word 2003 и старше эта команда была доступна в меню Сервис - Письма и рассылки - Мастер слияния (Tools - Letters and Mailings - Mail Merge).
Далее следует процесс из 6 этапов (переключение между ними - с помощью кнопок Вперед (Next) и Назад (Back) в правом нижнем углу в области задач).
Этап 1. Выбор типа документа.
На этом шаге пользователь должен выбрать тип тех документов, которые он хочет получить на выходе после слияния. Наш вариант - Письма (Letters), если мы хотим на выходе отправить созданные письма на принтер или Электронное сообщение (E-mail), если хотим разослать их по почте.
Этап 2. Выбор документа
На этом шаге необходимо определить, какой документ будет являться основой (заготовкой) для всех будущих однотипных сообщений. Мы выбираем - Текущий документ (Current document).
Этап 3. Выбор получателей
На этом шаге мы подключаем список клиентов в Excel к документу Word. Выбираем Использование списка и жмем на Обзор (Browse), после чего в диалоговом окне открытия файла указываем где лежит наш файл со списком клиентов.
После выбора источника данных, Word позволяет провести фильтрацию, сортировку и ручной отбор записей при помощи окна Получатели слияния:
Этап 4. Создание письма
На этом этапе пользователь должен указать – куда именно в документ должны попасть данные из подключенного списка. Для этого необходимо установить курсор в точку вставки в письме и использовать ссылку Другие элементы - она выводит полный набор всех полей списка, из которого мы и выбираем нужное поле для вставки:
В итоге, после вставки всех полей слияния у нас должно получиться нечто похожее (вставленные поля выделены красным):
Если в исходной таблице не было специального столбца для окончания "ый"/"ая" к слову "уважаем" (как в нашем примере), но был обычный столбец "Пол" с классическими "муж" и "жен", то можно воспользоваться кнопкой Правила (Rules) на вкладке Рассылки (Mailings):
Эта кнопка открывает список правил (функций и полей), доступных для вставки в документ при создании рассылки. Для подстановки нужного окончания к слову "уважаемый/ая" выберем третий пункт IF...THEN...ELSE. В открывшемся затем окне зададим правило подстановки правильного окончания в зависимости от пола:
Этап 5. Просмотр писем
На этом этапе мы уже можем предварительно просмотреть результаты слияния, используя кнопки со стрелками. При необходимости, также, можно исключить любого получателя из списка.
Этап 6. Завершение слияния
На завершающем этапе возможны несколько вариантов:
Нажатие ссылки Печать (Print) приведет к немедленной отправке всех результатов слияния на принтер без вывода на экран.
Если необходимо сохранить созданные в результате слияния документы для дальнейшего использования или требуется внести ручную правку в некоторые из документов, то лучше использовать ссылку Изменить часть писем (Edit individual letters), которая выведет результаты слияния в отдельный файл:
Если вы на Шаге 1 выбирали опцию Электронные сообщения (E-mail), то на Шаге 6 вам предложат ввести тему для отправляемых сообщений и выбрать столбец таблицы, содержащий адреса электронной почты для рассылки. Затем все созданные сообщения будут помещены в папку Исходящие (Outbox) вашего почтового клиента Outlook.
Для проверки правильности созданных сообщений можно заранее временно отключить Outlook от сервера, чтобы письма сразу не ушли и вы могли их посмотреть и убедиться, что с ними все в порядке. Для этого в меню Microsoft Outlook можно выбрать команду Файл - Автономный режим или даже временно отключить сетевое подключение к вашему компьютеру. Письма временно "застрянут" в папке Исходящие (Outbox) и вы сможете их открыть и проверить перед отправкой.
Ссылки по теме
- Отправка книги или листа Excel по электронной почте
- Создание электронных писем с помощью функции ГИПЕРССЫЛКА (HYPERLINK)
- Инструмент для массовой рассылки сообщений (в т.ч. с вложениями) по списку из надстройки PLEX
А возможно ли слияние в один и тот же вордовский документ
с разных листов эксель?
Подскажите пожалуйста как это можно сделать?
Заранее спасибо!
Но возник другой вопрос. При отправке сообщений Outlook не прикрепляет стандартную подпись с контактами итд которая прописана в настройках/
А что если есть верстка письма, прописанная в html5? Как сделать вышеупомянутую рассылку, используя базу адресов из таблицы exel? В данном случае вложения не нужны. Заранее спасибо, за то что вы оказываете, порой, неоценимую помощь.
Подскажите, пожалуйста, по задаче - необходимо создать информационную рассылку, где будет представлена информация об оборудовании, установленном на объектах заказчика (серийный номер, тип оборудования). То есть для каждого получателя несколько строк с данными.
Возможно ли это сделать, используя этот инструмент?
Если нет, что можете посоветовать.
Спасибо!
Прошу уточнить какая причина того, что в Excel 2013 при слиянии на шаге "4" у меня не показывает заголовки, а показывает следующее обозначения:
Fields:
F1
F2
F3
F4
F5
Служба по работе с персоналом экономит "кучу" времени при рассылке "именной" информации в подчиненные подразделения!
Клиенто-ориентированные службы также экономят "кучу" времени при рассылке "Писем Счастья" тысячам клиентов.
У этих служб Word-шаблоны - многолистовые шаблоны-Договоры, "Письма Счастья" с Ориентацией=Книга.
А у экономических служб табличные Word-шаблоны с Ориентацией=Альбом, которые заполняются информацией из БД для рассылки в подчиненные подразделения.
Если Word-шаблон имеет Ориентацию=Книга, всё - отлично: макрос работает идеально.
Если Word-шаблон имеет Ориентацию=Альбом, то в "нарезанных" файлах появляется кроме информационного листа пустой лист с Ориентацией=Книга.
В вопросах программирования на VBA я - почти абсолютный "чайник".
Помогите, пожалуйста, решить эту проблему.
Спасибо за материал!
Подскажите, как можно защитить созданные письма, которые отправляются как вложение?
Необходимо, что бы полученный файл был как можно больше защищен (аналог PDF), что бы при получении, его необходимо было только открыть и распечатать.
Подскажите пожалуйста, возможно ли по условию вставлять не текст в шаблон а разные картинки.
Спасибо.
Еще раз огромное Вам спасибо за программу и полученные навыки.
Подскажите, возможно ли настроить рассылку так, чтобы при отправке всплывало диалоговое окно с вопросом с какого адреса отправлять?
спасибо.
Подскажите, пожалуйста, как отправить письмо не со своего личного ящика, а с общего.
Заранее спасибо!
Спасибо большое. Слияние получается, но как вставить в тело письма список работников по условию (список команды вместо одного получателя)?
.To = Range("G2".Value ' адрес (кому)
Подскажите как перечеслять маилы взятые из ячеек? через ";" не получается
Пока нашел только либо тело письма заполнять из файла или же вместо тела письма вложение к письму добавлять, а что в теле письма в таком случае будет