Excel: come Creare un Pulsante per Inviare Email Personalizzate

Dai forma al tuo futuro professionale

Created with Sketch.

Excel: come Creare un Pulsante per Inviare Email Personalizzate

come Creare un Pulsante per Inviare Email

Tutorial Excel: creare un pulsante per inviare delle email

👇 Scorri in basso per copiare il codice VBA 👇

Excel: come Creare un Pulsante per Inviare Email Personalizzate

  • 00:00 – introduzione
  • 00:20 – Impostazione Iniziale
  • 00:45 – creare un menù a tendina
  • 01:05 – formattazione condizionale
  • 01:30 – codice VBA
  • 02:15 – creazione pulsante
  • 02:26 – test funzionamento esercizio
  • 02:36 – come scaricare il modello del preventivo

Come Creare un Pulsante per Inviare Email Personalizzate

[Introduzione] 0:00 Se stai cercando un modo per automatizzare l’invio di email personalizzate tramite Excel, sei nel posto giusto! In questo breve tutorial, ti mostrerò come creare un pulsante che ti permetterà di spedire un’email personalizzata con un solo click. Continua a seguirmi per imparare questa utile funzionalità di Excel.

Per prima cosa, assicuriamoci di essere sulla stessa pagina. Poiché utilizzeremo del codice VBA (Visual Basic for Applications), è importante salvare il file nel formato giusto. Vai su “File,” seleziona “Salva con Nome,” e scegli “Cartella di Lavoro con Attivazione Macro.” Assegna un nome al tuo file e assicurati di avere l’estensione “.xlsm.”

[Creare un Menù a Tendina] 0:52

Ora, creiamo un elenco a discesa che ci permetterà di selezionare se la consegna è stata effettuata o meno. Vai su “Dati,” seleziona “Convalida,” e scegli “Elenco da Origine.” Seleziona le celle che contengono “Sì” e “No” (generalmente E1 ed E2) e conferma. Questo ci permetterà di segnare se l’utente ha consegnato l’esame o meno.

[Formattazione Condizionale] 1:27

Per una maggiore chiarezza, possiamo utilizzare la formattazione condizionale. Crea una nuova regola di formattazione condizionale per evidenziare in rosso chi deve ancora consegnare l’esame. Utilizza la formula: =C2="No" per formattare in rosso le celle in cui è segnato “No.”

[Invio delle Email e creazione del codice VBA] 2:08

Ora entriamo nel cuore del nostro tutorial: creare il codice VBA per automatizzare l’invio delle email. Puoi trovare il codice completo sul mio sito [inserire il tuo URL]. Copia il codice e incollalo in un nuovo modulo VBA.

Per far funzionare il codice correttamente, assicurati di modificare il nome del foglio di lavoro. In particolare, sostituisci “esame” con il nome del tuo foglio, se diverso. Modifica anche il testo dell’email secondo le tue esigenze, ad esempio, l’oggetto dell’email e il messaggio stesso.

Torna al tuo foglio Excel e inserisci un pulsante tramite “Inserisci.” Quindi, assegna al pulsante la macro che abbiamo appena creato: “Invia Email a Chi Non Ha Ancora Inviato.”

[Risultato] 4:19

Ora, quando cliccherai su questo pulsante, Excel invierà automaticamente un’email personalizzata agli utenti che non hanno ancora consegnato l’esame. Puoi vedere il messaggio di conferma e il destinatario nell’interfaccia di Excel.

Se questo tutorial ti è stato utile, sostieni il mio lavoro lasciando un like e iscrivendoti al mio canale 🙏

Tutorial Excel: il codice VBA per creare un pulsante che invii delle email di sollecito a un elenco di utenti

Copia il seguente codice e incollalo nell’Editor VBA della tua cartella Excel:

Sub InviaEmailNO()
    Dim OutApp As Object
    Dim OutMail As Object
    Dim Rng As Range
    Dim Cell As Range
    Dim NomiInviati As String ' Stringa per memorizzare i nomi inviati
    Dim CorrispondenzaTrovata As Boolean ' Variabile di controllo
    
    ' Inizializza la stringa dei nomi inviati
    NomiInviati = ""
    
    ' Inizializza la variabile di controllo
    CorrispondenzaTrovata = False
    
    ' Crea un'applicazione Outlook
    Set OutApp = CreateObject("Outlook.Application")
    
    ' Imposta il foglio di lavoro e l'intervallo di celle
    Set Rng = ThisWorkbook.Sheets("NomeDelTuoFoglio").Range("A1:C" & Cells(Rows.Count, "A").End(xlUp).Row)
    
    ' Loop attraverso le righe dell'intervallo
    For Each Cell In Rng.Rows
        If Cell.Cells(1, 3).Value = ThisWorkbook.Sheets("NomeDelTuoFoglio").Range("E2").Value Then
            ' Crea un nuovo messaggio email
            Set OutMail = OutApp.CreateItem(0)
            
            ' Configura il destinatario (indirizzo email dalla colonna B)
            OutMail.To = Cell.Cells(1, 2).Value
            
            ' Oggetto del messaggio (personalizzalo a tuo piacimento)
            OutMail.Subject = "Oggetto dell'email"
            
            ' Messaggio personalizzato nel corpo dell'email
            Dim Nome As String
            Dim Scadenza As String
            
            Nome = Cell.Cells(1, 1).Value ' Contenuto dalla colonna A
            Scadenza = ThisWorkbook.Sheets("NomeDelTuoFoglio").Range("G1").Value ' Contenuto di G1
            
            OutMail.Body = "Gentile " & Nome & ", " & vbCrLf & _
                          "Le ricordo che l'esame va consegnato entro e non oltre il " & Scadenza & "." & vbCrLf & vbCrLf & _
                          ""
            
            ' Invia l'email
            OutMail.Send
            
            ' Aggiungi il nome dalla colonna A alla stringa dei nomi inviati
            NomiInviati = NomiInviati & Nome & ", "
            
            ' Imposta la variabile di controllo su True
            CorrispondenzaTrovata = True
            
            ' Libera la memoria dall'oggetto email
            Set OutMail = Nothing
        End If
    Next Cell
    
    ' Chiudi l'applicazione Outlook
    Set OutApp = Nothing
    
    ' Se non è stata trovata alcuna corrispondenza, mostra un messaggio
    If Not CorrispondenzaTrovata Then
        MsgBox "Niente da sollecitare", vbInformation
    Else
        ' Rimuovi l'eventuale virgola finale dalla stringa dei nomi inviati
        NomiInviati = Left(NomiInviati, Len(NomiInviati) - 2)
    
        ' Visualizza il pop-up con i nomi inviati
        MsgBox "Email inviata a: " & NomiInviati
    End If
End Sub

Facebook, Instagram, YouTube, Tik Tok, LinkedIn !

facebook graficaeformazioneInstagram graficaeformazioneyoutube graficaeformazioneLinkedin graficaeformazionetwitter graficaeformazione

 

Una risposta.

  1. francesco.santarsia ha detto:

    Buonasera,
    la ringrazione per il tutorial, le chiedo cortesemente solo una semplice specifica. Sono riuscito a fare girare la macro ma, una volta spinto il tasto mi appare il seguente pop-up:

    Errore di run-time ‘-2147467259 (80004005)’

    E’ necessario specificare il destinatario. Immettere almeno un nome.

Lascia un commento