KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Как отправить письмо нескольким получателям из списка Excel через Outlook?

АвторСяоянДата изменения

Во многих рабочих ситуациях вам может понадобиться отправить сообщения группе людей, чьи адреса электронной почты хранятся в столбце листа Excel — например, для рассылки новостей, отправки счетов или уведомления участников мероприятия. Вместо того чтобы вручную вводить каждый адрес или открывать Outlook для создания письма, вы можете использовать Excel для автоматической отправки сообщений всем получателям напрямую. Это руководство предлагает подробные решения по массовой отправке писем из Excel с интеграцией в Outlook, что поможет сэкономить время и снизить количество ошибок.

Отправка письма нескольким получателям из Excel с помощью кода VBA

Отправка письма нескольким получателям с прикреплением Текущая книга с помощью кода VBA

Альтернативное решение: отправка Адрес электронной почты, разделённых точками с запятой, с использованием формулы Excel


Отправка письма нескольким получателям из Excel с помощью кода VBA

Если вы хотите отправить одно и то же письмо группе людей, а их адреса указаны в столбце листа, вы можете автоматизировать эту задачу с помощью кода VBA. Этот метод особенно удобен для массовых уведомлений или групповых обновлений — без необходимости вручную добавлять получателей в Outlook. Выполните следующие шаги:

1. Нажмите сочетание клавиш ALT + F11, чтобы открыть окно Microsoft Visual Basic for Applications. Если вкладка «Разработчик» не активирована, инструкции по её включению можно найти в настройках Excel.

2. В окне редактора VBA выберите Вставка > Модуль. Откроется пустое окно модуля, в которое вы сможете вставить свой код. Вставьте следующий код:

Код VBA: отправка письма нескольким получателям

Sub sendmultiple()
'updateby Extendoffice
    Dim xOTApp As Object
    Dim xMItem As Object
    Dim xCell As Range
    Dim xRg As Range
    Dim xEmailAddr As String
    Dim xTxt As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select the addresses list:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xOTApp = CreateObject("Outlook.Application")
    For Each xCell In xRg
        If xCell.Value Like "*@*" Then
            If xEmailAddr = "" Then
                xEmailAddr = xCell.Value
            Else
                xEmailAddr = xEmailAddr & ";" & xCell.Value
            End If
        End If
    Next
    Set xMItem = xOTApp.CreateItem(0)
    With xMItem
        .To = xEmailAddr
        .Display
    End With
End Sub

3. Нажмите клавишу F5(или кнопку «Выполнить»), чтобы запустить код. Появится диалоговое окно с запросом на выбор списка адресов из вашего листа. На этом этапе вы можете легко выделить все ячейки с нужными адресами электронной почты, гарантируя, что код обработает только те из них, которые соответствуют формату электронной почты ()*@*). См. скриншот:

снимок экрана с выделенным списком адресов электронной почты после выполнения кода

4. После выбора адресов нажмите кнопку ОК. Outlook откроет новое окно Сообщение, автоматически заполнив выбранные адреса в поле Кому. Теперь вы можете указать тему и написать текст сообщения в соответствии с вашими потребностями. При необходимости окно позволяет дополнительно редактировать письмо для персонализации или уточнения. См. скриншот:

снимок экрана созданного письма со всеми выбранными адресами электронной почты в поле «Кому»

5. После завершения составления сообщения нажмите кнопку Отправить, чтобы отправить письмо всем указанным получателям одновременно. Такой подход гарантирует, что ни один адрес не будет упущен, и значительно ускоряет групповую коммуникацию.

Совет: убедитесь, что Outlook установлен и задан в качестве основного почтового клиента — это необходимо для корректной работы метода. Если возникают проблемы, например не появляется диалоговое окно, дважды проверьте настройки безопасности макросов в Excel.

Применимые сценарии: используйте этот метод для объявлений команде, уведомлений о мероприятиях или отправки одинаковой информации нескольким получателям. Преимущества — высокая скорость и точность при минимальном ручном вводе; ограничение — отсутствие персонализации сообщений для отдельных получателей.

Устранение неполадок: если окно сообщения Outlook не открывается, убедитесь, что Outlook запущен корректно и назначен обработчиком почты по умолчанию. Также проверьте, что все выбранные ячейки содержат корректные адреса электронной почты — в коде предусмотрена обработка ошибок, но для наилучшего результата избегайте пустых или неправильно отформатированных ячеек.


Отправляйте персонализированные письма нескольким получателям с разными вложениями:

Для решения более сложных задач — таких как отправка уникальных вложений, персонализированного содержимого или автоматическое добавление адресов в поля «Копия»/«Скрытая копия» — воспользуйтесь функцией Kutools для Excel Отправка писем, чтобы быстро и легко рассылать персонализированные письма из Excel через Outlook. Эта функция позволяет настраивать письма под каждого получателя, прикреплять отдельные файлы и добавлять адресатов в поля копии (CC/Bcc) в соответствии с вашими требованиями — для ещё более гибкой массовой рассылки.Нажмите, чтобы загрузить Kutools для Excel!

снимок экрана использования функции отправки электронных писем Kutools для удобной отправки персонализированных писем нескольким получателям с разными вложениями


Отправка письма нескольким получателям с прикреплением Текущая книга с помощью кода VBA

Если вам нужно отправить текущую книгу Excel группе получателей во вложении, следующее решение на основе VBA поможет автоматизировать этот процесс. Этот метод идеально подходит для распространения отчётов, финансовых сводок или совместных документов среди нескольких заинтересованных сторон.

1. Откройте Excel и нажмите ALT + F11, чтобы запустить среду Microsoft Visual Basic for Applications.

2.В редакторе VBA перейдите в меню Вставка>Модуль, затем скопируйте и вставьте приведённый ниже код в окно модуля:

Код VBA: отправка письма нескольким получателям с прикреплением Текущая книга

Sub EmailAttachmentRecipients()
'updateby Extendoffice
    Dim xOutlook As Object
    Dim xMailItem As Object
    Dim xRg As Range
    Dim xCell As Range
    Dim xEmailAddr As String
    Dim xTxt As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select the arresses list:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xOutlook = CreateObject("Outlook.Application")
    Set xMailItem = xOutlook.CreateItem(0)
    For Each xCell In xRg
        If xCell.Value Like "*@*" Then
            If xEmailAddr = "" Then
                xEmailAddr = xCell.Value
            Else
                xEmailAddr = xEmailAddr & ";" & xCell.Value
            End If
        End If
    Next
    With xMailItem
        .To = xEmailAddr
        .CC = ""
        .Subject = ""
        .Body = ""
        .Attachments.Add ActiveWorkbook.FullName
        .Display
    End With
    Set xOutlook = Nothing
    Set xMailItem = Nothing
End Sub

3. Нажмите клавишу F5, чтобы запустить код. Появится диалоговое окно для выбора ячеек с адресами электронной почты. Этот механизм позволяет легко включить всех нужных получателей из листа и гарантирует добавление только корректно отформатированных адресов электронной почты. См. скриншот:

снимок экрана с выделенным списком адресов электронной почты после выполнения второго кода VBA

4. После подтверждения выбора нажмите кнопку ОК. Outlook автоматически создаст новое окно Сообщение, в котором в поле Кому будут указаны выбранные получатели, а к письму будет прикреплена текущая открытая книга. Затем вы сможете настроить тему и текст сообщения перед отправкой. См. скриншот:

снимок экрана созданного письма со всеми выбранными адресами электронной почты в поле «Кому» и текущей книгой Excel во вложении

5. Нажмите кнопку Отправить, чтобы отправить письмо с прикреплённой книгой всем выбранным получателям за один раз.

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

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

Типичные проблемы: если диалоговое окно не открывается или письмо не отправляется, убедитесь, что вы предоставили разрешения на выполнение макросов и сохранили книгу до запуска кода. Также проверьте выделенный диапазон на наличие пустых ячеек — код пропускает содержимое, не соответствующее стандартному формату электронной почты.


Альтернативное решение: отправка Адрес электронной почты, разделённых точками с запятой, с использованием формулы Excel

Если вы хотите быстро объединить список адресов электронной почты в одну ячейку, разделив их точкой с запятой для удобного копирования в поля Кому, Копия или Скрытая копия Outlook, формулы Excel предложат быстрое и простое решение — особенно если вы не хотите использовать макросы.

1. Предположим, ваши адреса электронной почты перечислены в столбце A, строки 1–7. Введите следующую формулу в пустую ячейку (например, B1):

=TEXTJOIN(";",TRUE,A1:A7)

2. Нажмите клавишу Enter. В результате вы получите одну текстовую строку, содержащую все адреса электронной почты из выбранного диапазона, разделённые точками с запятой. Затем эту ячейку можно скопировать и вставить напрямую в поля получателей Outlook.

Параметры формулы:

  • TEXTJOIN: объединяет диапазон ячеек с помощью указанного разделителя — в данном случае точки с запятой.
  • ИСТИНА: исключает все пустые ячейки в диапазоне. Все корректные адреса электронной почты будут объединены без пропусков.
  • A1:A10: измените этот диапазон под свой список адресов электронной почты.

Преимущества: этот подход не требует включения макросов, что делает его идеальным для сред с ограничениями на использование VBA. Кроме того, он позволяет легко и быстро копировать собранный список в любую почтовую платформу — не только в Outlook.

Ограничения: в отличие от VBA, это решение не создаёт электронные письма автоматически и не автоматизирует их отправку, но значительно повышает эффективность работы со списками получателей.

Совет: если ваш список изменяется, обязательно обновите диапазон формулы соответствующим образом. Для форматов с разделителями, отличными от точки с запятой, замените «;» на нужный вам символ.


Связанная статья:

Как отправить персонализированные массовые письма из Excel через Outlook, используя список получателей?


Лучшие инструменты повышения продуктивности в Office

🤖KUTOOLS AI Помощник: Преобразуйте Анализ данных с помощью:Интеллектуального выполнения   |  Генерации кода|  Создания пользовательские формулы  |  Анализа данных и построения диаграмм|  Вызова Расширенные функции
Популярные функции:Поиск, выделение или Отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячеек без потери данных   |  Округление без использования формул
Супер ПОИСК:VLookup по нескольким критериям  |  VLookup по нескольким значениям  |   VLookup по нескольким листам   |   Распознавание нечетких соответствий
Расширенный раскрывающийся список:Быстрое создание выпадающего списка   |  Зависимый выпадающий список   |  Выпадающий список с множественным выбором
Управление столбцами:Добавление заданного количества столбцов|Перемещение столбцов|Переключение видимости скрытых столбцов|Сравнение диапазонов и столбцов
Избранные функции:Сетка фокусировки   |  Просмотр дизайна   |Улучшенная строка формулы   | Управление рабочими книгами и листами   |  Библиотека ресурсов(автотекст)|  Выбор даты   |  Объединить листы  |  Шифрование/Расшифровать ячейки   | Отправка писем по списку   |  Супер фильтр   |   Специальный фильтр(Фильтр ячеек с жирным шрифтом/курсив/зачёркивание…) …
Лучшие наборы инструментов 15:12 Текстовыеинструменты(Добавить текст,Удалить определенные символы, …)|   50+Типыдиаграмм(Диаграмма Ганта, …)|   40+ Практические формулы(Рассчитать возраст на основе даты рождения, …)|   19 Инструментывставки(Вставить QR-код,Вставка изображения по пути, …)|   12 Инструментыпреобразования(Преобразовать в слова,Конвертация валют, …)|   7 Объединить и разделитьИнструменты(Расширенное объединение строк,Разделить ячейки, …)|… и многое другое
Используйте Kutools на предпочитаемом языке — поддержка английского, испанского, немецкого, французского, китайского и ещё 40+ языков!

Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…


Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
  • Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!

Все надстройки Kutools — один установщик

Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.

ExcelWordOutlookTabsPowerPoint
  • Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
  • Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
  • Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
  • 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек