ich möchte eine E-Mailadresse aus Daten in der Spalte A ausschneiden. Sie steht jeweils zwischen dem vorletzen und dem letzten Komma. Danke für Hilfe.
A | B | |
1 | asdasasd, 234234234, xcyxcyxc, qweqwqwe, 234234234, sdfsafasdf, a@b.de, asdasdasd | a@b.de |
2 | asdasasd, 234234234, qweqwqwe, 234234234, sdfsafasdf, b@c.de, asdasdasd | b@c.de |
3 | qweqwqwe, 234234234, sdfsafasdf, c@d.de, asdasdasd | c@d.de |
4 | asdasasd, 234234234, xcyxcyxc, qweqwqwe, asdasdasd, 234234234, sdfsafasdf, d@e.de, asdasdasd | d@e.de |
Zelle | Formel |
B1 | =fncBananenSplit(A1) |
B2 | =fncBananenSplit(A2) |
B3 | =fncBananenSplit(A3) |
B4 | =fncBananenSplit(A4) |
Option Explicit
Function fncBananenSplit(strTMP As String) As String
Dim strZ() As String
strZ = Split(strTMP, ",")
fncBananenSplit = Trim(strZ(UBound(strZ) - 1))
End Function
ServusA | B | |
1 | asdasasd, 234234234, xcyxcyxc, qweqwqwe, 234234234, sdfsafasdf, a@b.de, asdasdasd | a@b.de |
2 | asdasasd, 234234234, qweqwqwe, 234234234, sdfsafasdf, b@c.de, asdasdasd | b@c.de |
3 | qweqwqwe, 234234234, sdfsafasdf, c@d.de, asdasdasd | c@d.de |
4 | asdasasd, 234234234, xcyxcyxc, qweqwqwe, asdasdasd, 234234234, sdfsafasdf, d@e.com, asdasdasd | d@e.com |
5 | asdasasd, 234234234, xcyxcyxc, qweqwqwe, asdasdasd, 234234234, sdfsafasdf, e@f.de, asdasdasd | e@f.de |
Zelle | Formel |
B1 | =fncWerReitetSoSpaetDurchNachtUndWind(A1) |
B2 | =fncWerReitetSoSpaetDurchNachtUndWind(A2) |
B3 | =fncWerReitetSoSpaetDurchNachtUndWind(A3) |
B4 | =fncWerReitetSoSpaetDurchNachtUndWind(A4) |
B5 | =fncWerReitetSoSpaetDurchNachtUndWind(A5) |
Option Explicit
Function fncWerReitetSoSpaetDurchNachtUndWind(strText As String) As String
Dim objRegExp As Object
Dim objMAtch As Object
On Error GoTo Fin
Set objRegExp = CreateObject("VbScript.Regexp")
With objRegExp
.Global = True
.Pattern = "[a-z0-9\-_]?[a-z0-9.\-_]+[a-z0-9\-_]?@[a-z.-]+\.[a-z]{2,}"
If .Test(strText) Then
Set objMatch = .Execute(strText)
fncWerReitetSoSpaetDurchNachtUndWind = objMAtch(0).Value
Else:
fncWerReitetSoSpaetDurchNachtUndWind = "Bitte Funktion überprüfen!"
End If
End With
Fin:
Set objMAtch = Nothing
Set objRegExp = Nothing
End Function
Das "Pattern" erschlägt sicher nicht alle Mailadressen, aber da wird man im Netz schnell fündig.