Перейти к содержимому

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

Author: Siluvia Last Modified: 2025-08-07

В Excel можно автоматизировать процесс отправки электронных писем на основе определенных условий, таких как значение в конкретной ячейке. Например, вы можете захотеть автоматически отправлять электронное письмо через Outlook, когда значение в ячейке D7 превышает 200. В этом руководстве показано, как использовать VBA (Visual Basic для Applications) для запуска отправки электронного письма в Outlook на основе значения ячейки.

Автоматическая отправка электронного письма на основе значения ячейки с помощью кода VBA


Автоматическая отправка электронного письма на основе значения ячейки с помощью кода VBA

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

1. В рабочем листе, где нужно отправить электронное письмо на основе значения его ячейки (в данном случае ячейка D7), щелкните правой кнопкой мыши по вкладке листа и выберите Код из контекстного меню. См. скриншот:

A screenshot of the context menu in Excel showing the View Code option for a worksheet

2. В появившемся окне Microsoft Visual Basic для Applications, пожалуйста, скопируйте и вставьте следующий код VBA в окно кода листа.

Код VBA: Отправка электронного письма через Outlook на основе значения ячейки в Excel

Dim xRg As Range
'Update by Extendoffice 2018/3/7
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Target.Cells.Count > 1 Then Exit Sub
  Set xRg = Intersect(Range("D7"), Target)
    If xRg Is Nothing Then Exit Sub
    If IsNumeric(Target.Value) And Target.Value > 200 Then
        Call Mail_small_Text_Outlook
    End If
End Sub
Sub Mail_small_Text_Outlook()
    Dim xOutApp As Object
    Dim xOutMail As Object
    Dim xMailBody As String
    Set xOutApp = CreateObject("Outlook.Application")
    Set xOutMail = xOutApp.CreateItem(0)
    xMailBody = "Hi there" & vbNewLine & vbNewLine & _
              "This is line 1" & vbNewLine & _
              "This is line 2"
    On Error Resume Next
    With xOutMail
        .To = "Email Address"
        .CC = ""
        .BCC = ""
        .Subject = "send by cell value test"
        .Body = xMailBody
        .Display   'or use .Send
    End With
    On Error GoTo 0
    Set xOutMail = Nothing
    Set xOutApp = Nothing
End Sub

Примечания:

1) В коде VBA D7 и значение > 200 являются ячейкой и значением ячейки, на основе которых будет отправлено электронное письмо.
2) Пожалуйста, измените тело электронного письма так, как вам нужно, в строке xMailBody в коде.
3) Замените Адрес Электронной Почты на адрес получателя в строке .To = "Адрес Электронной Почты".
4) И укажите получателей Копии и Скрытой копии по необходимости в секциях .CC = “” и Bcc = “”.
5) Наконец, измените тему электронного письма в строке .Subject = "send by cell value test".

3. Нажмите клавиши Alt + Q вместе, чтобы закрыть окно Microsoft Visual Basic для Applications.

С этого момента, когда значение, введенное в ячейку D7, будет больше 200, электронное письмо с указанными получателями и текстом будет создано автоматически в Outlook. Вы можете нажать кнопку Отправить, чтобы отправить это письмо. См. скриншот:

A screenshot showing an email draft in Outlook created automatically from an Excel cell value

Примечания:

1. Код VBA работает только тогда, когда вы используете Outlook в качестве программы электронной почты.

2. Если введенное значение в ячейке D7 является текстовым, окно электронной почты также будет открыто.


Легко отправлять электронные письма через Outlook на основе полей созданного списка рассылки в Excel:

Утилита Отправить Электронные Письма Kutools для Excel помогает пользователям отправлять электронные письма через Outlook на основе созданного списка рассылки в Excel.

A screenshot of Kutools for Excel's Send Emails utility interface

Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас


Связанные статьи:

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

🤖 Kutools AI Aide: Переворот в анализе данных на основе: Интеллектуальное выполнение   |  Сгенерировать код  |  Создать Пользовательские Формулы  |  Анализ данных и генерация диаграмм  |  Вызов Kutools Functions
Популярные функции: Найти, выделить или отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячейки без потери данных   |   Округлить...
Супер ПОИСК: VLookup с несколькими критериями    VLookup с несколькими значениями  |   Многолистовой поиск   |   Распознавание нечетких соответствий ....
Расширенный раскрывающийся список: Быстро создать раскр. список   |  Зависимый раскрывающийся список   |  Множественный выбор в раскрывающемся списке ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки   |  Дизайн листа   |   Улучшенная строка формулы    Управление книгой и листами   |  Библиотека автотекста (Auto Text)   |  Выбор даты   |  Объединить данные   |  Шифрование/Расшифровка ячеек    Отправить письмо по списку   |  Супер фильтр   |   Специальный фильтр (фильтр по жирному/курсиву/зачеркиванию...) ...
Топ–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% и сократите сотни кликов мышью ежедневно!