In uno dei prossimi articoli parleremo sicuramente di come gestire l’invio di mail da Excel usando delle macro in VBA, ma sapevate che è possibile usare anche la funzione COLLEG.IPERTESTUALE() per raggiungere lo stesso risultato?
Facciamo però prima un passo indietro e diamo uno sguardo più da vicino agli aspetti generali di questa funzione.
La funzione COLLEG.IPERTESTUALE()
Nel suo utilizzo tradizionale, la funzione COLLEG.IPERTESTUALE() crea un collegamento ad un file memorizzato in un server di rete, una rete intranet oppure su Internet. La sintassi di questa funzione è la seguente:
=COLLEG.IPERTESTUALE(Posizione_collegamento; [Nome_collegamento])
Gli argomenti pertanto sono due:
- Posizione_collegamento (obbligatorio). Indica il percorso e il nome del file da aprire. Può fare anche riferimento ad un punto particolare di un documento, come ad esempio una cella di Excel oppure un segnalibro di Word. Il percorso può essere relativo ad un file memorizzato sul disco rigido, oppure può essere un percorso [tooltip tip=”Uniform Resource Locator”] URL [/tooltip] se il documento è su una intranet o su Internet.
- Nome_collegamento (facoltativo). E’ il testo o il valore numerico del collegamento che viene visualizzato nella cella. Nome_collegamento viene visualizzato in blu e sottolineato. Se nome_collegamento viene omesso, nella cella verrà visualizzato posizione_collegamento come testo del collegamento.
Quando si fa clic sulla cella contenente questa funzione, verrà aperto il documento memorizzato nel percorso indicato dall’argomento “posizione_collegamento”.
La cosa interessante di questa funzione è però che riesce a gestire anche gli URL di tipo “mailto:” permettendoci quindi di creare dei link che automaticamente generano mail.
Come inviare mail da Excel
Partiremo ora da semplici esempi e introdurremo mano a mano ulteriori elementi in modo da rendere le cose un po’ più “complicate” :-).
Mail da inviare ad un singolo destinatario
=COLLEG.IPERTESTUALE("mailto:info@officeacademy.it";"Crea Email")
Un clic sulla cella e si aprirà un messaggio mail con il campo A: già valorizzato con info@officeacademy.it.
Mail da inviare a destinatari multipli
=COLLEG.IPERTESTUALE("mailto:info@officeacademy.it;excel@officeacademy.it";"Crea Email")
In questo modo il campo A: del nuovo messaggio sarà valorizzato con due destinatari: info@officeacademy.it e excel@officeacademy.it.
Inserire destinatari in Cc: (per conoscenza) e in Ccn: (per conoscenza nascosta)
=COLLEG.IPERTESTUALE("mailto:info@officeacademy.it;excel@officeacademy.it?cc=cc@officeacademy.it&bcc=ccn@officeacademy.it";"Crea Email")
Al fine quindi di aggiungere destinatari “per conoscenza” oppure “per conoscenza nascosta” occorre aggiungere un punto interrogativo (?) al termine dell’argomento Posizione_collegamento e legare gli eventuali indirizzi Cc: e Ccn: con una “e commerciale” (ampersand = &).
Aggiungere un oggetto alla mail
=COLLEG.IPERTESTUALE("mailto:info@officeacademy.it;excel@officeacademy.it?cc=cc@officeacademy.it&bcc=ccn@officeacademy.it&subject=Articolo interessante!!";"Crea Email")
L’indicazione dell’oggetto della mail può essere inserita nella formula utilizzando il codice &subject=.
Aggiungere una riga di testo al corpo del messaggio
=COLLEG.IPERTESTUALE("mailto:info@officeacademy.it;excel@officeacademy.it?cc=cc@officeacademy.it&bcc=ccn@officeacademy.it&subject=Articolo interessante!!&body=Ho appena letto un articolo interessante";"Crea Email")
Una singola riga di testo può essere aggiunta usando il codice &body=.
Aggiungere più righe di testo al corpo del messaggio
=COLLEG.IPERTESTUALE("mailto:info@officeacademy.it;excel@officeacademy.it?cc=cc@officeacademy.it&bcc=ccn@officeacademy.it&subject=Articolo interessante!!&body=Ho appena letto un articolo interessante%0Asu https://www.excelacademy.it";"Crea Email")
Una seconda riga di testo nel corpo del messaggio può essere inserita separandola dalla prima con il codice %0A. Volendo inserire due interruzioni di linea dovremmo inserire due volte il codice %0A, e così via.
Alcuni punti di attenzione
- Il sistema qui presentato per creare mail da Excel funziona solo se nel computer in uso è stato definito un programma predefinito per la gestione delle mail
- Con questa modalità è solamente possibile generare mail, ma non spedirle direttamente. Per la spedizione automatica occorrerebbe introdurre una macro in VBA… magari in una delle prossime puntate
- La funzione COLLEG.IPERTESTUALE che viene utilizzata per produrre le mail presenta un limite intrinseco. Tale funzione accetta come argomento, in modo diretto o anche indiretto tramite riferimento ad altre celle, una stringa di una lunghezza massima di 255 caratteri (tutto compreso: indirizzo dei destinatari, oggetto e corpo del messaggio). Per inviare mail più lunghe tramite Excel è necessario rivolgersi a soluzioni costruite tramite codice scritto ad hoc in VBA.
BONUS – Un generatore di mail già pronto per voi
Avrete sicuramente capito che inviare mail da un comunissimo foglio di lavoro di Excel non è fantascienza. Non è quindi neanche difficile strutturare il foglio come fosse una maschera da compilare, lasciandovi la sola incombenza di cliccare su una cella per la generazione della mail.
Ho quindi realizzato il file in allegato, per mezzo del quale sarete in grado di creare mail senza neanche dovervi ricordare la corretta sintassi della funzione.
Buone mail a tutti!!