Tipps "n" Tricks
Anwender-Software - Excel

Nachnamen aus einer Zeichenkette ermitteln

Thema:

Excel 97/2000   

Problem:

Nachnamen aus einer Zeichenkette ermitteln

 Lösung: 

Wenn Sie Excel auch als Datenbank benutzen oder für Listen oder beliebige Aufstellungen Namen verwenden, dann kennen Sie das leidige "Nachnamen"-Problem. Immer wieder gibt es Situationen, in denen Sie gezielt auf den Nachnamen einer Person zugreifen wollen, aber genau dann ist natürlich nur der komplette Name in eine Zelle eingegeben. Nun wäre es ein leichtes, die Textfunktionen von Excel zum Auslesen des Nachnamens zu verwenden, wenn jeder Name immer eindeutig aus zwei Teilen bestehen würde: dem Vor- und dem Nachnamen. Aber die Realität sieht natürlich anders aus: doppelte Vornamen und andere Spezialfälle verhindern den Einsatz einer einfachen Formel.

Glücklicherweise bietet Excel die Möglichkeit, das Programm durch beliebige benutzerdefinierte Funktionen zu erweitern. Erstellen Sie also ein neues Visual Basic-Modul, und geben Sie die folgende Funktion ein:

Function Nachname(GanzerName)

  For I = 0 To Len(GanzerName) - 1
    Verkehrt = Verkehrt & Mid(GanzerName, _
    Len(GanzerName) - I, 1)
  Next I

  Nachname = Right(GanzerName, InStr(1, _
  Verkehrt, " ", 0))

End Function


In Zukunft können Sie ganz einfach den Nachnamen aus jedem beliebigen Namen ermitteln, indem Sie eine Formel mit der folgenden Syntax eingeben:

=NACHNAME(<Bezug>)

Die Funktionweise unseres Visual Basic-Programms ist ganz einfach: Mit einer For-Next-Schleife kehren wir die gesamte Zeichenkette um. Aus "Peter Michael Müller" wird also "rellüM leahciM reteP". Danach sucht "Mid" nach dem ersten Leerzeichen in der umgedrehten Version des Namens, so dass sich anschliessend mit der Right-Funktion der Nachname ermitteln lässt.

 

Tipps "n" Tricks
Anwender-Software - Excel