Почтовая рассылка
Имеем таблицу в Microsoft Excel, в которой хранится информация о ключевых клиентах нашей компании (адреса эл.почты, имена, названия компаний и т.д.), которых мы хотим поздравить с очередным праздником.
Поздравлять будем при помощи простого, но трогательного сообщения, содержащего имя клиента и название его компании. Причем все надо сделать так, чтобы получатель (не дай бог!) не подумал, что письмо сделано автоматически, а был уверен, что письмо было кропотливо написано ради него вручную.
- либо отправить через Outlook каждому клиенту на его e-mail
- либо распечатать для последующей отправки обычной почтой
- либо закинуть в новый файл, где каждое письмо будет отдельным листом (разделом)
В терминах Microsoft Office такая процедура называется Слиянием (Mail Merge) . Поехали.
Макрос на VBA Excel – Формируем документы по шаблону | — IT-блог для начинающих
- Шапка таблицы должна быть простой — одна строка с уникальными названиями столбцов (без повторений и пустых ячеек).
- В таблице не должно быть объединенных ячеек.
- В таблице не должно быть пустых строк или столбцов (отдельные пустые ячейки допускаются).
Реализовывать нашу задачу будем на примере «Электронной карточке сотрудника» (я это просто придумал:), хотя может такие и на самом деле есть), т.е. документ в котором хранится личные данные сотрудника вашего предприятия, в определенном виде, именно в Excel.
Задача
Итак, предположим, продукт-мэнеджеру ударила в голову идея того, что возможность выгружать некий отчет в формате Excel увеличит кол-во пользователей на 100500%. Проджет-менеджер решает выкатить эту киллер-фичу как хотфикс прямо сегодня — ведь работы всего на пару часов.
Аналитик, в свою очередь, выдает задачу с феноменально точным описанием — «Сгенерировать excel отчет на базе данных MarketReport». Что ж, для нашего примера, создадим заглушку — генератор фейковых данных:
Почтовая рассылка
Если вы когда-нибудь до этого открывали Excel, то возможно знаете, что ширина ячеек не может отличаться в рамках столбца и автофит будет по самому широкому контенту ячейки. Однако, простые вещи бывает нетак то просто объяснить. Но если вы справитесь, то вот как это будет выглядеть в коде:
Код макроса на VBA Excel
Для того чтобы написать код макроса, открывайте на ленте вкладку «Разработчик», далее макросы.
Примечание! По умолчанию данной вкладке в Excel 2010 может и не быть, чтобы ее отобразить нажмите правой кнопкой по ленте пункт меню «Настройка ленты»
затем, в правой области поставьте галочку напротив пункта «Разработчик»
После вкладка разработчик станет отображаться на ленте.
Далее, когда Вы откроете вкладку разработчик и нажмете кнопку «Макросы» у Вас отобразится окно создания макроса, Вы пишите название макросы и жмете «создать».
После у Вас откроется окно редактора кода, где собственно мы и будем писать свой код VBA. Ниже представлен код, я его как обычно подробно прокомментировал:
Теперь осталось выполнить этот макрос, для этого откройте вкладку разработчик->макросы->выполнить наш макрос:
и после выполнения у Вас в той же папке появится вот такие файлы
Для удобства можете на листе с данными создать кнопку и задать ей событие выполнить наш только что созданный макрос, и после чего простым нажатием выполнять этот макрос. Вот и все! Удачи!
Как Эксель перевести в Ворд: пошаговая инструкция
Теперь наступает самая интересная часть: создание дескриптора. Т. к. это практически полностью динамически собираемый отчёт, дескриптор довольно сложен, на практике (когда у нас есть только «шапка» документа, его строки и «подвал») всё обычно гораздо проще. Вот какой в данном случае необходим дескриптор:
Онлайн конвертеры
Кроме этого, существуют различные сайты, которые могут бесплатно преобразовать ваш документ в любой нужный вам формат. Для этого достаточно ввести нужный запрос в поисковую систему.
В нашем случае это будет «Конвертер xlsx в doc», поскольку у файлов Экселя расширение xlsx, а у вордовских – doc.
Важно понимать, что не все сайты могут справиться с поставленной задачей ввиду различных причин.
Кроме этого, данный сервис может бесплатно сконвертировать следующие форматы.
Для того чтобы преобразовать файл, нужно предпринять следующие действия.
Либо просто перенесите нужный файл в окно браузера, поскольку там написано: «or drag and drop files».
Качество вполне приемлемое. Обратите внимание на то, что в случае маленького размера таблицы, вы получите соответствующий масштаб страницы.
Выгружаем данные в Excel. Цивилизованно / Хабр
- Первым делом необходимо скопировать содержимое листа. Вы можете сделать это как угодно (через контекстное меню или горячие клавиши [knopka]Ctrl[/knopka]+[knopka]C[/knopka]).
- В результате этого вы увидите следующее.
Реализовывать нашу задачу будем на примере «Электронной карточке сотрудника» (я это просто придумал:), хотя может такие и на самом деле есть), т.е. документ в котором хранится личные данные сотрудника вашего предприятия, в определенном виде, именно в Excel.