Slik trekker du ut e-postadresser på et Excel-regneark
En Excel-e-postliste bør ikke inneholde noe annet enn adressene selv. Likevel, hvis regnearket mottok data fra en ekstern form, kan kolonnen inneholde irrelevant tekst. En celle kan lese "Min adresse er [email protected], " og en annen kan si "kontakt på [email protected]." Du kan trekke ut e-postadressene i en ny kolonne slik at Excel kan bruke dem til applikasjoner som postfusjon. En metode for å gjøre dette er å skrive et Visual Basic-skript.
Skriv funksjonen
1.
Trykk på "Alt" og "F11" -tastene for å åpne Excels Visual Basic-editor.
2.
Skriv inn følgende kode for å åpne en ny funksjon:
Funksjon ExtractCellEmail (celle som rekkevidde) som streng
3.
Legg til følgende kode for å trekke ut all tekst fra en gitt celle:
Dim innhold Som String innhold = cell.Text
4.
Legg til følgende kode for å identifisere posisjonen til "@" -symbolet i teksten:
AtPosition = InStr (1, innhold, "@")
5.
Legg til følgende to linjer for å identifisere start- og sluttposisjonene til e-postadressen ved hjelp av "@" -symbolets posisjon:
AddressStartingPosition = InStrRev (innhold, "" AtPosition) AddressEndingPosition = InStr (AtPosition, innhold, "")
6.
Legg til følgende linje for å pakke ut e-postadressen ved hjelp av start- og sluttposisjonene:
emailAddress = Trim (Mid (innhold, AddressStartingPosition, AddressEndingPosition - AddressStartingPosition))
7.
Legg til følgende linje for å skrive ut den hentede adressen til en tilstøtende celle:
ActiveCell.Offset (0, 1) .Value = emailAddress
8.
Skriv inn følgende kode for å lukke funksjonen:
Sluttfunksjon
Bruk funksjonen til et celleområde
1.
Skriv inn følgende kode etter funksjonen for å åpne en ny makro:
Sub mcrExtractColumnAddresses ()
2.
Skriv inn følgende kode for å åpne en loop:
Gjøre
3.
Skriv inn følgende kode etter looplinjen for å ringe til funksjonen du skrev:
Ring ExtractEmails (ActiveCell)
4.
Skriv inn følgende kode etter forrige linje for å velge neste celle i kolonnen:
ActiveCell.Offset (1, 0) .Velg
5.
Legg til følgende linje for å lukke sløyfen:
Loop til IsEmpty (ActiveCell)
6.
Legg til følgende kode for å lukke makroen:
Slutt Sub
7.
Bytt til regnearkvinduet.
8.
Velg den første cellen hvis e-postadresse du vil trekke ut.
9.
Bytt tilbake til Visual Basic-vinduet. Plasser musepekeren i mcrExtractColumnAddresses () -blokken, hvis den ikke er der allerede.
10.
Trykk på "F5" -tasten for å kjøre makroen og trekk ut postadressene.
Advarsel
- Denne prosessen fungerer så lenge de eneste "@" -symbolene er de i e-postadresser. Du kan sikkert anta at dette vil være troverdig for de fleste celler, men vurder å bla gjennom listen over hentede e-postadresser for å manuelt ta feil.