Note: The other languages of the website are Google-translated. Back to English
Accedi  \/ 
x
or
x
Registrati  \/ 
x

or

Come controllare gli indirizzi dei destinatari prima di inviare tramite Outlook?

In alcuni casi, potresti perdere l'aggiunta di alcuni destinatari importanti nei campi A, CC o BCC durante l'invio di e-mail tramite Outlook. Qui, posso introdurre un metodo per verificare se gli indirizzi e-mail specifici sono stati aggiunti prima dell'invio tramite Outlook.

Controlla gli indirizzi prima di inviare con il codice VBA


Controlla gli indirizzi prima di inviare con il codice VBA

Qui ho due codici che possono aiutarti a risolvere questo lavoro, puoi scegliere chiunque di cui hai bisogno.

1. Stampa Alt + F11 keys per abilitare Microsoft Visual Basic, Applications Edition finestra.

2. Doppio click Questa sessione di Outlook da Project1 riquadro per aprire l'editor del codice, copiare e incollare sotto il codice nell'editor.

VBA: controlla l'indirizzo del destinatario nel campo A prima di inviare

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
'UpdatebyExtendoffice20180523
Dim xAddressArr() As Variant
Dim xAddress As String
Dim xRecipient As Recipient
Dim xPrompt As String
Dim xYesNo As Integer
Dim xDictionary As Scripting.Dictionary
On Error Resume Next
Set xDictionary = New Scripting.Dictionary
xAddressArr = Array("example1@126.com", "example2@126.com", "example3@126.com")
For i = LBound(xAddressArr) To UBound(xAddressArr)
    xDictionary.Add xAddressArr(i), True
Next i
For Each xRecipient In Item.Recipients
    If xRecipient.Type = olTo Then
        If xDictionary.Exists(xRecipient.Address) Then xDictionary.Remove xRecipient.Address
    End If
Next
If xDictionary.Count = 0 Then GoTo L1
For i = 0 To xDictionary.Count - 1
    If xAddress = "" Then
        xAddress = xDictionary.Keys(i)
    Else
        xAddress = xAddress + "; " & xDictionary.Keys(i)
    End If
Next i
xPrompt = "You are not sending this to: " & xAddress & ". Are you sure you want to send the Mail?"
xYesNo = MsgBox(xPrompt, vbQuestion + vbYesNo, "Kutools for Outlook")
If xYesNo = vbNo Then Cancel = True
L1:
  Set xRecipient = Nothing
  Set xDictionary = Nothing
End Sub

doc controlla l'indirizzo del destinatario prima dell'invio 1

Nel codice puoi cambiare ("example1@126.com", "example2@126.com", "example3@126.com") ai veri destinatari di cui hai bisogno.

3. Quindi anche in Microsoft Visual Basic, Applications Edition finestra, fare clic Strumenti > Referenze. Controllare Runtime di script Microsoft casella di controllo in Riferimenti-Progetto1 dialogo.

doc controlla l'indirizzo del destinatario prima dell'invio 2 doc freccia destra doc controlla l'indirizzo del destinatario prima dell'invio 3

4. Clic OK e salva il codice.

Ora Se i destinatari specificati non vengono visualizzati nel campo A durante l'invio di e-mail, verrà visualizzata una finestra di dialogo per ricordarti se inviare l'e-mail.
doc controlla l'indirizzo del destinatario prima dell'invio 4

Con il codice sopra, controlla solo gli indirizzi e-mail in A campo, se vuoi fare il check-in A, CC e BCC campi, puoi utilizzare il codice sottostante.

VBA: controlla l'indirizzo del destinatario nei campi A / CC / BCC prima dell'invio

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
'UpdatebyExtendoffice20180523
Dim xRecipients As Outlook.Recipients
Dim xRecipient As Outlook.Recipient
Dim xPos As Integer
Dim xYesNo As Integer
Dim xPrompt As String
Dim xAddress As String
On Error Resume Next
If Item.Class <> olMail Then Exit Sub
Set xRecipients = Item.Recipients
xAddress = "example1@gmail.com"
For Each xRecipient In xRecipients
    xPos = InStr(LCase(xRecipient.Address), xAddress)
    If xPos = 0 Then
        xPrompt = "You sending this to " & xAddress & ". Are you sure you want to send it?"
        xYesNo = MsgBox(xPrompt, vbYesNo + vbQuestion + 4096, "Kutools for Outlook")
        If xYesNo = vbNo Then Cancel = True
    End If
Next xRecipient
End Sub

Con questo codice non è necessario controllare Runtime di script Microsoft casella di controllo, salva direttamente il codice per avere effetto.


Kutools for Outlook: porta 100 funzionalità avanzate in Outlook e semplifica notevolmente il lavoro!

  • Auto CC / BCC dalle regole durante l'invio di e-mail; Avanzamento automatico Email multiple personalizzate; Risposta automatica senza server di scambio e più funzioni automatiche ...
  • Avviso BCC - mostra il messaggio quando provi a rispondere a tutti se il tuo indirizzo e-mail è nell'elenco BCC; Ricorda quando mancano allegatie altre funzioni di promemoria ...
  • Rispondi (tutti) con tutti gli allegati nella conversazione di posta; Rispondi a molte email in secondi; Aggiunta automatica di saluto quando rispondi; Aggiungi la data all'oggetto ...
  • Strumenti per gli allegati: gestisci tutti gli allegati in tutti i messaggi, Scollegamento automatico, Comprimi tutto, Rinomina tutto, Salva tutto ... Rapporto rapido, Conta le email selezionate...
  • E-mail spazzatura potenti per abitudine; Rimuovi messaggi e contatti duplicati... Consentono di fare in modo più intelligente, veloce e migliore in Outlook.
girato kutools outlook scheda kutools 1180x121
girato kutools outlook kutools plus tab 1180x121
 
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.

Be the first to comment.