Come inviare automaticamente e-mail in base al valore della cella in Excel?
Supponendo di voler inviare un'e-mail tramite Outlook a un determinato destinatario in base a un valore di cella specificato in Excel. Ad esempio, quando il valore della cella D7 in un foglio di lavoro è maggiore di 200, viene creata automaticamente un'e-mail. Questo articolo introduce un metodo VBA per risolvere rapidamente questo problema.
Invia automaticamente e-mail in base al valore della cella con codice VBA
Invia automaticamente e-mail in base al valore della cella con codice VBA
Si prega di fare quanto segue per inviare un'e-mail in base al valore della cella in Excel.
1. Nel foglio di lavoro è necessario inviare e-mail in base al valore della cella (qui dice la cella D7), fare clic con il pulsante destro del mouse sulla scheda del foglio e selezionare Visualizza codice dal menu contestuale. Vedi screenshot:
2. Nel spuntare Microsoft Visual Basic, Applications Edition finestra, copia e incolla il codice VBA sottostante nella finestra del codice del foglio.
Codice VBA: invia e-mail 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 il altro + Q i tasti insieme per chiudere il file Microsoft Visual Basic, Applications Edition finestra.
D'ora in poi, quando il valore immesso nella cella D7 è maggiore di 200, verrà creata automaticamente un'e-mail con i destinatari e il corpo specificati in Outlook. Puoi fare clic su Invia pulsante per inviare questa email. Vedi screenshot:
Note:
1. Il codice VBA funziona solo quando si utilizza Outlook come programma di posta elettronica.
2. Se i dati inseriti nella cella D7 sono un valore di testo, verrà visualizzata anche la finestra di posta elettronica.
Invia facilmente e-mail tramite Outlook in base ai campi della mailing list creata in Excel:
La Inviare emails utilità di Kutools for Excel aiuta gli utenti a inviare e-mail tramite Outlook in base alla mailing list creata in Excel.
Scaricalo e provalo ora! (Percorso gratuito di 30 giorni)
Articoli correlati:
- Come inviare un'e-mail tramite Outlook quando la cartella di lavoro viene salvata in Excel?
- Come inviare e-mail se una determinata cella viene modificata in Excel?
- Come inviare e-mail se si fa clic sul pulsante in Excel?
- Come inviare e-mail se la data di scadenza è stata rispettata in Excel?
- Come inviare un promemoria o una notifica tramite posta elettronica se la cartella di lavoro viene aggiornata in Excel?
I migliori strumenti per la produttività in ufficio
Potenzia le tue competenze di Excel con Kutools per Excel e sperimenta l'efficienza come mai prima d'ora. Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Fai clic qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab porta l'interfaccia a schede in Office e semplifica notevolmente il tuo lavoro
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
- Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!