Il blog di Gianni Giaccaglini

Blog su VBA e VSTO
Gianni Giaccaglini

My Links

News

NB - V. anche gli ARTICOLI (in fondo a questa barra)
Solo quesiti validi a: giannigiac@tin.it
Il mio Best seller su VBA
(v. www.hoepli.it)


Il mio ultimo libro su Open XML
(v. www.FAG.it):



La mia nipotina ELISA

Foto con dedica a ME di
Bill Gates giovanissimo
nei mitici anni 80!

Categorie Post

Categorie Articoli

Archivio

Immagini

Blog Stats

Indirizzi e-mail in un foglio Excel per utenti giramondo

 

 

Indirizzi e-mail per utenti giramondo

Questa è un’ideuzza semplice che si rivolge ai principianti ma insegna anche ad altri almeno un segretoccio.

Obiettivo. Creare un foglio Excel contenente i dati essenziali relativi ai propri contatti, del tipo seguente.

 

A

B

C

D

E

1

NOME_COGN

Nome

Cognome

Indirizzopostaelettronica

 

2

Alessio Andreoni

Alessio

Andreoni

alessand@amba.it

 

3

Marco Rossi

Marco

Rossi

marcrossi@piopao.com

 

4

Stefania Pintacuda

Stefania

Pintacuda

stefpint@tin.it

 

5

 

 

 

 

 

 

 

 

 

 

Il vantaggio del modellino è evidente: consente a chi si trova fuori sede di portarsi appresso indirizzi e usufruirne rapidamente su un PC altrui o in qualche Internet Point. Va subito sottolineata l’importanza che gli indirizzi in colonna D siano in forma di hyperlink, così basterà un clic su uno di essi per attivare automaticamente l’Outlook locale.

Ed ecco le mosse necessarie.

  1. Esportare i Contatti del nostro Outlook in un file Excel, diciamo ContattiOutlk.xls, col comando File > Importa esporta... con quel che segue (modalità date per note),, magari rinunciando già in tale sede ai campi che non ci interessano, potatura che può farsi anche in Excel.
  2. Completare tutti i campi Nome e Cognome (è un consiglio e rappresenta l’occasione di mettere un po’ d’ordine nella nostra Posta elettronica)
  3. Aggiungere la colonna A intestata NOME_COGN come in figura. Anche questo è un cosiglio, la colonna potrebbe essere sull’estrema destra, l’importante è che nelle colonne da A2 in giù vengano inserite le formule seguenti, che fanno compariire il Nome + Cognome dei vari soggetti:
    =B2&" "&C2
    =B3&" "&C3
    =B2&" "&C2
    eccetera
  4. Impostare il Filtro Automatico, con il comando specifico del menu Dati. In tal modo basterà un clic sulla colonna NOME_COGN per vedersi spaparanzare tale elenco da cui scegliere un contatto: così si vedrà una sola riga evidenziandone l’indirizzo e-mail.
  5. Dare un clic su tale indirizzo e proseguire con Outlook.

Tutto piuttosto semplice e scontato, ma c’è un’operazione che stavo dimenticando (di proposito, però, per una certa suspense...):

  1. Lanciare la macro CreaLink qui sotto indicata

Nota CreaLink a sua volta richiama una Sub CreaHyperlink con argomento Colonna. È una finezza volta al possibile ri-uso altrove. Chi la trovasse eccessiva può facilmente eseguire il merge...

Sub CreaHyperlink(Colonna As Range)

  Dim Cella As Range, txtLink As String

  For Each Cella In Colonna

    txtLink = Cella.Text

    Cella.Hyperlinks.Add Anchor:=Cella, Address:= _

        "mailto:" & txtLink, TextToDisplay:=txtLink

  Next

End Sub

 

Sub CreaLink()

  With Range("IndirPostaElettr")

    CreaHyperlink Range(.Cells(2), .End(xlDown))

  End With

End Sub

 

Ma come mai occorre una macro? Il motivo lo scoprono tutti al termine dell’esportazione dei Contatti: la colonna degli indirizzi è in forma di testo pertanto non si ha subito il beneficio del clic che richiama Outlook. Per rendersene più esattamente conto si vada su una cella come D2 e si prema il tasto F2. Il minieditor di cella ci svela la presenza di un apice (‘) anteposto, ossia si vede alessand@amba.it. Se si toglie tale apice e si preme Invio si assisterà alla nobilitazione della stringa in un azzurrino link... postelegrafonico.

Ma questo ripiego manuale è troppo lungo e tedioso. La macro compie il lavoro in qualche secondo.

?>

posted on lunedì 29 gennaio 2007 16.39