Kivonat e-mail címeket tartalmazó cellára másik szöveget
Megoldás: A probléma megoldható egy makrót, vagy egyedi funkció megaformuly.
A makró VBA osztott funkciót. Tegyük fel, hogy a cella szöveget írása [email protected] nálunk szemináriumot. Ha át a szöveget, hogy a spliti funkciót, és adja meg, hogy a szöveget úgy kell osztani elemek, szóközzel elválasztva - x = Split (cell.Value, „”) - VBA visszaadja egy tömb, amelyben minden szó egy olyan eleme a tömb. Ábra. Az 1. ábra egy sor x Osztott használat után funkciót.

Ábra. 1. Osztott függvény egy tömb, amelyben minden szó egy olyan eleme a tömb
Letöltés egy megjegyzés Word vagy PDF. példák Excel (VBA kód)
Sub getEmailMacro ()
Dim x Ahogy Variant
Dim i As Integer
Dim veszi As String
Mindegyik cellához Selection
X = Split (cell.Value, "")
I = 0 A UBound (x)
Ha x (i) Like "*@*.*" Akkor
cell.Offset (0, 1) = x (i)
Exit For
End If
Következő i
Következő sejt
End Sub
Kód felhasználói függvény:
Public Function getEmail (megjegyzés As String) As String
Dim x Ahogy Variant
Dim i As Integer
X = Split (megjegyzés, "")
I = 0 A UBound (x)
Ha x (i) Like "*@*.*" Akkor
getEmail = x (i)
Exit Function
End If
Következő i
End Function
Annak ellenére, hogy a következő képlet némi időt vesz igénybe, hogy írjon, rendkívül okos és meglepően könnyen kezelhető: = TRIM (MID (SUBSTITUTE ( „” A1; ""; REPEAT ( "", 20)); SEARCH ( "@"; SUBSTITUTE ( "" A1; ""; REPEAT ( "", 20))) - 20, 40)). első
A képlet eredetileg Helyettesítő funkció, hogy az eredeti szöveg, cserélje minden helyet a húsz egymást követő terek. Ez lehetővé teszi, hogy külön minden szó a szövegben egy nagy rések számát.
Eredeti szöveg: most van itt az ideje [email protected] vásárolni egy könyvet
Új szöveg: itt az ideje, [email protected] vásárolni egy könyvet
Végül a TRIM függvény lecseréli több szóköz egymás után egy, és eltávolítja a bevezető és záró szóközöket, úgyhogy a végén kapsz, amit akart: [email protected] (4. ábra).