Passa ai contenuti principali

Microsoft Excel - Estrarre solo le E-Mail da celle con testo misto

A volte capita che abbiamo un elenco di E-Mail che si trovano in un file di Word, ad esempio e a noi serve urgentemente un file di Excel con queste E-Mail

Come risolvere?

Come nel caso dei buchi in una colonna ci abbiamo impiegato pochi minuti, anche in questo caso ci impiegheremo pochi minuti.



Consideriamo la seguente lista


1 - Premere ALT + F11 Comparirà la scheda Visual Basic Application Editions

Excel - Visual Basic Application Edition

 2 - Inserisci -> Modulo e nella casella di testo copiare ed incollare il seguente testo

Public Function f(ByVal v As Variant) As String
    Dim s() As String
    Dim lng As Long
    f = "Nessuna email"
    s = Split(v, " ")
    For lng = 0 To UBound(s)
        If InStr(s(lng), "@") Then
            f = s(lng)
            Exit For
        End If
    Next
End Function


Excel - VBA con Moudo e codie inserito

3 - Ripremere ALT + F11 (torna ad Excel)

4 - Se le E-Mail si trovano nella colonna A, possiamo scegliere una colonna tipo F, ad esempio e scrivere la seguente stringa:

 F1: =f(A1) (in courier grassetto è la formula da scrivere, uguale compreso) e premere invio

5 - Selezionare e tirare  verso il basso la colonna F per tutta la lunghezza delle E-Mail

Excel - E-Mail Estratte da testo generico - 1


6 - Per eliminare le righe Nessuna email Copiamo la colonna F appena creata, spostiamoci più in la (ad esempio la colonna I) e, cliccando sul pulsante incolla, incolliamo solo i valori (non la formula, co me si vede nella immagine successiva)

Avremo così

Excel - Colonna I con solo i valori incollati delal colonna F


 7 - Per compattare la colonna dobbiamo eliminare i valori duplicati, in questo caso Nessuna email. Nella scheda dati (Excel 2010) c'è il pulsante Rimuovi duplicati. Avremo

 
Excel - Rimuovi Duplicati

 Cliccando su OK rimuove gli n duplicati -1

Excel - Colonna con i duplicati rimossi -1
A questo punto non rimane che eliminare a mano la riga e copiare ed incollare i dati così estratti in un altro foglio di Excel  o di testo.

A margine devo aggiungere che questo metodo può essere usato anche per effettuare una ricerca molto più stretta  rispetto a quella imposta.

Infatti se da una lista di, ad esempio,  1.000 email di vario genere che hanno domini differenti (ad esempio gmail.com, hotmail.com, libero.it, ecc) ovviamente inseriti in modo casuale, vogliamo estrarre dal mucchio solo quelle che hanno per dominio gmail.com, alla riga:

If InStr(s(lng), "@") Then

al posto di @ possiamo inserire 

If InStr(s(lng), "@gmail.com") Then

eseguendo lo stesso procedimento appena descritto, avremo tutte le E-Mail che hanno per dominio quello che abbiamo scelto.



Commenti

MARCO ha detto…
GRAZIE RAGAZZO, MI HAI SALVATO IL FINE SETTIMANA!
Anonimo ha detto…
OTTIMA FUNZIONE GRAZIE. MI SAPETE DIRE SE SULLO STESSO TESTO CI SONO DUE O PIU INDIRIZZI E_MAIL COME POSSO FARE PER ESTRARLI TUTTI?

COSI' PRENDE SOLO IL PRIMO

CIAO
Carmine
vittoria ha detto…
non riesco con excel 2010 ! quand e che compaiono tutte le mail ?e perche la pagina alt F11 non si chiude ?salva anche il mio fine settimana pleeease :)

Post più popolari

Mac OS X - Installare ed usare una stampante sul Print Server GetNet 3 Port 2 USB e 1 LPT

Abbiamo visto come installare il Print Server GetNet 3 in 1 sui più diffusi sistemi operativi Windows (vedi articoli correlati in fondo al post). La "scatoletta" ha anche un protocollo di comunicazione Apple Talk, quindi può essere collegata (fare da tramite) anche a stampanti che abbiano la gestione post script integrata (quasi tutte le stampanti salvo quelle del gruppo Ricoh che hanno bisogno di un apposito moduol installato) sul Mac. Print Server GetNet 1 Parallela e 2 USB Il metodo di installazione è molto simile a quello visto su Windows, con la differenza sostanziale che non è necessario scegliere tra moltissimi modelli, ma si gestisce in modo più semplice. Purtroppo sul Mac non è possibile (allo stato attuale) collegare print server di tipo TP-Link, ovvero replicatori di porta USB su Lan, in quanto non esiste un driver adatto. Detto questo, consideriamo la stampante che vogliamo collegare al Mac. Il caso che abbiamo usato nei precedenti post,

BlackBerry - Importare i dati da altri cellulari

English translated post Un amico mi porta un BlackBerry Pearl 8110 e mi chiede di trasferire i dati dal suo cellulare Nokia a questo telefono. Premesso che personalmente non ho mai reputato il BlackBerry un telefono "semplice", l'operazione si è reputata piuttosto complessa. Scartata l'idea di mandare i vcard via bluetooth (come si fa con quasi tutti i Nokia e Samsung), l'unica alternativa è quella di appoggiarsi a Microsoft Outlook !!! Come fare? 1 - Installare il Microsoft Outlook (XP o 2003) nel proprio PC 2 - Installare (nel caso specifico del Nokia) il programma Nokia PC Suite 3 - Sincronizzare solo la Rubrica (ovviamente dipende sempre se il cellulare Nokia è il Vostro o di un Vostro amico) del Nokia con l'Outlook, così che tutti i dati presenti nella Rubrica siano copiati nella sezione Contatti dell'Outlook 4 - Scaricare l'ultima versione del BlackBerry Desktop Manager (se il pacchetto è quello Vodafone, la versione sul CD non è mo

Joomla! - Mettere la testata in Stampa

Come è noto Joomla! è uno dei più usati CMS (Content Managment System) che consente di avere un ambiente (environment) sul quale costruire e sviluppare siti e portali. Uno dei problemi più noti è quello di poter inserire la testata nel file da stampare. Ad esempio se il mio sito si chiama dicecca.net - Blog ed ha un logo particolare che voglio pubblicare come testata, nella conformazione classica, non posso farlo. Come risolvere? Premesso che tutto il sistema è scritto in linguaggio PHP, il file che viene chiamato in causa è component.php che si trova nella cartella /[sito (1)] /templates/system Il file ( che è possibile scaricare qui in formato testo ), alla riga 40 inizia il Body del testo. Alla riga 41 inizia l'inclusione del testo dell'articolo che si è deciso di stampare, che a sua volta viene aperto in una finestra popup. Dando un taso invio, dalla riga 41 è possibile inserire il riferimento ad una immagine e/o un formattato HTML della testata del nos