Jak automatycznie wysyłać wiadomości e-mail na podstawie wartości komórki w programie Excel?
Przypuśćmy, że chcesz wysłać wiadomość e-mail za pośrednictwem programu Outlook do określonego odbiorcy na podstawie określonej wartości komórki w programie Excel. Na przykład, jeśli wartość komórki D7 w arkuszu jest większa niż 200, wiadomość e-mail jest tworzona automatycznie. W tym artykule przedstawiono metodę VBA umożliwiającą szybkie rozwiązanie tego problemu.
Automatycznie wysyłaj wiadomości e-mail na podstawie wartości komórki z kodem VBA
Automatycznie wysyłaj wiadomości e-mail na podstawie wartości komórki z kodem VBA
Wykonaj następujące czynności, aby wysłać wiadomość e-mail na podstawie wartości komórki w programie Excel.
1. W arkuszu roboczym musisz wysłać wiadomość e-mail na podstawie wartości komórki (tutaj jest to komórka D7), kliknij prawym przyciskiem myszy kartę arkusza i wybierz Wyświetl kod z menu kontekstowego. Zobacz zrzut ekranu:
2. W wyskakującym okienku Microsoft Visual Basic for Applications okno, skopiuj i wklej poniższy kod VBA do okna kodu arkusza.
Kod VBA: wysyłaj wiadomości e-mail przez Outlooka na podstawie wartości komórki w Excelu
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
Uwagi:
3. wciśnij inny + Q klucze razem, aby zamknąć Microsoft Visual Basic for Applications okno.
Odtąd, gdy wartość wprowadzona w komórce D7 jest większa niż 200, wiadomość e-mail z określonymi odbiorcami i treścią zostanie utworzona automatycznie w Outlooku. Możesz kliknąć Wyślij przycisk, aby wysłać tę wiadomość e-mail. Zobacz zrzut ekranu:
Uwagi:
1. Kod VBA działa tylko wtedy, gdy używasz Outlooka jako programu pocztowego.
2. Jeśli wprowadzone dane w komórce D7 są wartością tekstową, okno wiadomości e-mail również zostanie wyskakujące.
Z łatwością wysyłaj wiadomości e-mail przez Outlooka na podstawie pól utworzonej listy mailingowej w Excelu:
Połączenia Wysyłać emaile użyteczność Kutools dla programu Excel pomaga użytkownikom wysyłać wiadomości e-mail przez Outlooka na podstawie utworzonej listy mailingowej w Excelu.
Pobierz i wypróbuj teraz! (30-dniowy bezpłatny szlak)
Podobne artykuły:
- Jak wysłać wiadomość e-mail za pośrednictwem programu Outlook, gdy skoroszyt jest zapisany w programie Excel?
- Jak wysłać wiadomość e-mail, jeśli określona komórka zostanie zmodyfikowana w programie Excel?
- Jak wysłać wiadomość e-mail, jeśli przycisk zostanie kliknięty w programie Excel?
- Jak wysłać wiadomość e-mail, jeśli termin został osiągnięty w programie Excel?
- Jak wysłać e-mail z przypomnieniem lub powiadomieniem, jeśli skoroszyt jest aktualizowany w programie Excel?
Najlepsze narzędzia biurowe
Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas. Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...
Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę
- Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
- Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
- Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!