Starte Excel
->ALT+F11
--> Rechtsklick auf "Microsoft Excel Objekte"
---> Einfügen > Modul
----> Folgenden Code hinterlegen:
Function SplitName(rng As Excel.Range, Optional Nachname As Boolean = False) As Variant
Dim i As Integer
Dim s() As String
'*** Einzelne Buchstaben ins Array
s = Split(StrConv(rng.Text, vbUnicode), Chr$(0))
'*** Wo ist der Grossbuchstabe nach dem zweiten Zeichen
For i = 1 To UBound(s) - 1
Select Case Asc(s(i))
Case 65 To 90
SplitName = IIf(Nachname = False, Mid(rng.Text, 1, i), Mid(rng.Text, i + 1, Len(rng.Text)))
Exit Function
End Select
Next
'*** ret
SplitName = CVErr(xlErrNA)
End Function
Nun kannst Du die Funktion als "normale Formeleingabe" verwenden:
Erklärung:
=SplitName(Zelle;0 oder 1)
0 für Nachname
1 für Vorname
|