Skip to content

Inviare email da excel con outlook

Come inviare più e-mail da un foglio di calcolo excel

Spesso utilizziamo l’applicazione Microsoft Office Outlook per gestire le e-mail, i contatti ecc. da casa e dall’ufficio. È probabilmente uno dei modi più sicuri e protetti per gestire le e-mail riservate. Ha molte funzioni utili. In questo articolo vi mostrerò come inviare e-mail da Excel in modo dinamico utilizzando VBA e Outlook.

Per accedere ai metodi e alle proprietà di Outlook, dobbiamo creare un’istanza di Outlook in VBA. Per inizializzare l’applicazione di Outlook, utilizzeremo la funzione CreateObject() per creare un oggetto dell’applicazione.

Nota importante: prima di continuare a leggere questo articolo, è necessario configurare Microsoft Office Outlook nel computer. In caso contrario, l’esempio di codice che vi mostrerò non produrrà il risultato desiderato.

Per prima cosa, è necessario aggiungere un riferimento all’oggetto Outlook in VBA. Nel menu in alto trovate Strumenti e scegliete Riferimenti…. Nella finestra di dialogo Riferimenti, individuare la Libreria oggetti di Microsoft Outlook 16.0, fare clic sulla casella di controllo e premere OK.

Se tutto è corretto, verrà inviato un messaggio di posta elettronica con un oggetto e un messaggio che dice “Salve”. Come si può vedere, ho creato due oggetti (objOutlook e objEmail), uno per l’applicazione Outlook e l’altro per la creazione di e-mail.

Outlook invia i messaggi di posta elettronica di massa individualmente

Se Outlook non è l’applicazione di posta elettronica predefinita, è necessario configurarla come predefinita per poter utilizzare questa funzione. Per ulteriori informazioni, vedere: Rendere Outlook il programma predefinito per la posta elettronica, i contatti e il calendario.

  Tutte le funzioni di excel

Se si utilizza Excel, Publisher o Word, è possibile inviare il file come contenuto del messaggio di posta elettronica, non come allegato. A tale scopo, è necessario aggiungere il comando Invia a destinatario posta alla barra degli strumenti di accesso rapido. Per sapere come aggiungere i comandi, vedere Personalizzazione della barra degli strumenti di accesso rapido.

Se si utilizza Excel, Publisher o Word, è possibile inviare il file come contenuto del messaggio di posta elettronica, non come allegato. A tale scopo, è necessario aggiungere il comando Invia a destinatario posta alla barra degli strumenti di accesso rapido. Per sapere come aggiungere i comandi, vedere Personalizzazione della barra degli strumenti di accesso rapido.

Se si utilizza Excel, Publisher o Word, è possibile inviare il file come contenuto del messaggio di posta elettronica, non come allegato. A tale scopo, è necessario aggiungere il comando Invia a destinatario posta alla barra degli strumenti di accesso rapido. Per sapere come aggiungere i comandi, vedere Personalizzazione della barra degli strumenti di accesso rapido.

Inviare e-mail da excel vba

Le macro di Excel possono fare molte delle stesse cose che fanno gli script VBA, senza bisogno di conoscenze di programmazione. VBA consente di implementare routine più avanzate, come la creazione di un report su un foglio di calcolo con tutte le informazioni del PC.

  Nuova jolly king 600 excel

Forse avete dei collaboratori che aggiornano documenti o fogli di calcolo ogni settimana e vorreste ricevere una notifica via e-mail quando lo fanno. Oppure avete un foglio di calcolo di contatti e volete inviare un’e-mail a tutti loro contemporaneamente.

Probabilmente state pensando che creare uno script per la trasmissione di e-mail da Excel sia complicato. Non è affatto così. La tecnica descritta in questo articolo si avvale di una funzione disponibile in Excel VBA da molto tempo, Collaboration Data Objects (CDO).

CDO è un componente di messaggistica utilizzato in Windows fin dalle prime generazioni del sistema operativo. Prima si chiamava CDONTS, poi, con l’avvento di Windows 2000 e XP, è stato sostituito da “CDO per Windows 2000”. Questo componente è già incluso nell’installazione VBA di Microsoft Word o Excel ed è pronto all’uso.

Potere automatizzare l’invio di e-mail da un elenco excel

Trovare un elemento di posta elettronica nella cartella Posta in arrivo che soddisfi un criterio specificato, eliminare alcuni o tutti gli allegati, aggiungere un nuovo allegato, inoltrarlo a un id di posta elettronica specifico e spostare l’elemento di posta elettronica in una cartella di posta appena creata, utilizzando Late Binding.

Quando si utilizza vba in un’applicazione di Office, ad esempio Outlook, viene impostato per impostazione predefinita un riferimento alla libreria degli oggetti di Outlook. Quando si automatizza per lavorare con gli oggetti di Outlook da un’altra applicazione, ad esempio Excel, è possibile aggiungere un riferimento alla libreria di oggetti di Outlook in Excel (l’applicazione host) facendo clic su Strumenti-Riferimenti in VBE, che consentirà di utilizzare le costanti predefinite di Outlook. Si tratta di un’operazione indispensabile quando si automatizza utilizzando l’Early Binding (spiegato in precedenza). Una volta aggiunto questo riferimento, è possibile creare una nuova istanza dell’applicazione Outlook utilizzando la parola chiave Nuovo.

  Fac simile preventivo lavori edili excel

Automatizzare Outlook da Excel, utilizzando il Late Binding: Non è necessario aggiungere un riferimento alla libreria di oggetti di Outlook in Excel (l’applicazione host); in questo caso non sarà possibile utilizzare le costanti predefinite di Outlook e sarà necessario sostituirle con i loro valori numerici nel codice. In Late Binding, la variabile oggetto è dichiarata come un tipo di oggetto che può essere un riferimento a qualsiasi oggetto e questo rende un oggetto late bound. Nel Late Binding, la libreria di oggetti non viene esposta durante la progettazione, ma il binding avviene in fase di esecuzione tramite le funzioni CreateObject o GetObject. CreateObject crea una nuova istanza di Outlook e GetObject restituisce un’istanza già in esecuzione dell’oggetto Outlook.