Come inviare automaticamente un'email in base al valore della cella in Excel?
In Excel, puoi automatizzare il processo di invio di email in base a condizioni specifiche, come il valore di una determinata cella. Ad esempio, potresti voler inviare automaticamente un'email tramite Outlook quando il valore nella cella D7 supera 200. Questo tutorial mostra come utilizzare VBA (Visual Basic for Applications) per attivare un'email in Outlook in base al valore di una cella.
Invia automaticamente un'email in base al valore della cella con il codice VBA
Invia automaticamente un'email in base al valore della cella con il codice VBA
Ecco come inviare un'email in base al valore della cella in Excel.
1. Nel foglio di lavoro in cui desideri inviare l'email in base al valore della cella (qui si fa riferimento alla cella D7), fai clic con il tasto destro del mouse sulla scheda del foglio e seleziona Visualizza Codice dal menu contestuale. Vedi screenshot:
2. Nella finestra Microsoft Visual Basic for Applications che appare, copia e incolla il seguente codice VBA nella finestra del codice del foglio.
Codice VBA: Invia email tramite Outlook in base al valore della cella in 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
Note:
3. Premi contemporaneamente i tasti Alt + Q per chiudere la finestra Microsoft Visual Basic for Applications.
Da ora in poi, quando il valore inserito nella cella D7 è maggiore di 200, verrà creata automaticamente un'email con i destinatari e il corpo specificati in Outlook. Puoi fare clic sul Invia pulsante per inviare questa email. Vedi screenshot:
Note:
1. Il codice VBA funziona solo quando utilizzi Outlook come programma di posta elettronica.
2. Se i dati inseriti nella cella D7 sono un valore di testo, la finestra dell'email verrà comunque visualizzata.
Invia facilmente email tramite Outlook in base ai campi della mailing list creata in Excel:
La funzione Invia Email di Kutools per Excel aiuta gli utenti a inviare email tramite Outlook basandosi su una mailing list creata in Excel.
Kutools per Excel - Potenzia Excel con oltre 300 strumenti essenziali. Goditi funzionalità AI gratuite per sempre! Ottienilo ora
Articoli correlati:
- Come inviare un'email tramite Outlook quando la cartella di lavoro viene salvata in Excel?
- Come inviare un'email se una determinata cella viene modificata in Excel?
- Come inviare un'email se un pulsante viene cliccato in Excel?
- Come inviare un'email se la data di scadenza è stata raggiunta in Excel?
- Come inviare un promemoria o una notifica via email se la cartella di lavoro viene aggiornata in Excel?
I migliori strumenti per la produttività in Office
Migliora le tue competenze su Excel con Kutools per Excel e sperimenta un nuovo livello di efficienza. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...
Office Tab porta l’interfaccia a schede su Office, rendendo il tuo lavoro molto più semplice
- Abilita la modifica a schede e la lettura in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, invece che in nuove finestre.
- Aumenta la tua produttività del50% e ti fa risparmiare centinaia di clic ogni giorno!