Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Name Vorname trennen mit VBA

Name Vorname trennen mit VBA
13.10.2004 18:20:57
Steffen
Hallo zusammen,
ich habe in einer Zelle einen Namen stehen. Framt : Name/Vorname
Nun würde ich gerne diese beiden Begriffe trennen. Angenommen Das ganze steht in A1, so möchte ich, dass der Nmae in A1 bleibt und der Vornmae in B1 geschrieben wird, so dass Vor- und Zuname halt in einer eigenen Zelle stehen. Das ganze würde ich gerne per VBA machen, da die Liste ständig erweitert wird und ich das dann nicht ständig mit der Hand ausführen will.
Würd mich freuen, wenn mir jemand weiter helfen könnte.
Gruß
Steffen
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Name Vorname trennen mit VBA
13.10.2004 18:47:09
Nepumuk
Hallo Steffen,
so geht's:


Option Explicit
Public Sub Steffen()
    Dim lngRow As Long, varArray As Variant
    Application.ScreenUpdating = False
    For lngRow = 1 To Cells(Rows.Count, 1).End(xlUp).Row
        If InStr(1, Cells(lngRow, 1).Text, "/") Then
            varArray = Split(Cells(lngRow, 1).Text, "/")
            Cells(lngRow, 1) = varArray(0)
            Cells(lngRow, 2) = varArray(1)
        End If
    Next
    Application.ScreenUpdating = True
End Sub


Gruß
Nepumuk
Anzeige
TextToColumns ? ;-)) oT
Boris
Grüße Boris
AW: TextToColumns ? ;-)) oT
13.10.2004 18:59:06
Nepumuk
Hi Boris,
ich bin Programmierer, von Excel habe ich keine Ahnung!!
Gruß
Nepumuk
P.S. Zwei Beiträge weiter oben habe ich zum ersten mal eine Formellösung vorgeschlagen. Ich arbeite daran. :-)
Siehe oben "APPLAUS!!" oT
Boris
Anzeige
Für dich bedarf es dann also einens neuen Levels..
Boris
Hi Nepumuk,
den ich hiermit offiziell vorschlage:
Excel: Verweigerung, VBA: Nepumuk
Grüße Boris
AW: Für dich bedarf es dann also einens neuen Levels..
13.10.2004 19:20:56
Nepumuk
Hallo Boris,
Excel besteht für mich zu 98% aus dem VBA - Editor. Was sich da vorne auf dem Sheet tut, das interessiert die, die mich beauftragen das da was passieren soll, wenn sie auf einen Button klicken. Ok, ich kontrolliere schon, ob es auch tut, aber ob's richtig war erfahre ich erst hinterher. Meistens nach der 20ten Korrektur, weil die meisten erst mal nicht wissen was sie eigentlich wollen, oder besser gesagt, erst dahinterkommen was sie wirklich haben möchten, wenn sie sehen, was überhaupt möglich ist.
Gruß
Nepumuk
Anzeige
AW: Für dich bedarf es dann also einens neuen Levels..
Boris
Hi Nepumuk,
erst dahinterkommen was sie wirklich haben möchten, wenn sie sehen, was überhaupt möglich ist.
Dafür trägst du ja nun die Alleinschuld. Verwöhn doch deine Anwender nicht immer so - dann geben sie auch früher Ruhe...:p
Hochachtungsvoll
Boris
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Namen in Vor- und Nachname trennen mit VBA


Schritt-für-Schritt-Anleitung

Um einen Namen in Vor- und Nachname zu trennen, kannst Du VBA verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne den VBA-Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Erstelle ein neues Modul:

    • Klicke mit der rechten Maustaste auf „VBAProject (DeineDatei.xlsx)“ und wähle „Einfügen“ > „Modul“.
  3. Füge den folgenden Code ein:

    Option Explicit
    
    Public Sub NamenTrennen()
       Dim lngRow As Long, varArray As Variant
       Application.ScreenUpdating = False
       For lngRow = 1 To Cells(Rows.Count, 1).End(xlUp).Row
           If InStr(1, Cells(lngRow, 1).Text, "/") Then
               varArray = Split(Cells(lngRow, 1).Text, "/")
               Cells(lngRow, 1) = varArray(0)
               Cells(lngRow, 2) = varArray(1)
           End If
       Next
       Application.ScreenUpdating = True
    End Sub
  4. Schließe den VBA-Editor:

    • Drücke ALT + Q, um den Editor zu schließen.
  5. Führe das Makro aus:

    • Gehe zurück zu Excel, drücke ALT + F8, wähle „NamenTrennen“ und klicke auf „Ausführen“.

Dieser Code trennt den Namen in der Zelle A1 in Vorname und Nachname und platziert den Nachnamen in B1.


Häufige Fehler und Lösungen

  • Fehler: „Typkonflikt“
    Lösung: Stelle sicher, dass die Zellen, die Du bearbeitest, Text enthalten und kein leerer Wert oder eine Formel ist.

  • Fehler: „Index außerhalb des Bereichs“
    Lösung: Überprüfe, ob der Trennzeichen ("/") in der Zelle vorhanden ist. Wenn nicht, kann der Code nicht korrekt ausgeführt werden.


Alternative Methoden

Wenn Du keine VBA-Lösung verwenden möchtest, kannst Du auch die Funktion „Text in Spalten“ nutzen:

  1. Markiere die Zellen mit den Namen.
  2. Gehe zu „Daten“ > „Text in Spalten“.
  3. Wähle „Getrennt“ und klicke auf „Weiter“.
  4. Setze das Trennzeichen (z. B. „/“) und klicke auf „Fertigstellen“.

Diese Methode ist hilfreich, wenn Du einmalig Daten trennen möchtest, ohne VBA zu verwenden.


Praktische Beispiele

  1. Beispiel 1: Name in A1: „Müller/Max“
    Nach Ausführung des Makros wird A1 zu „Müller“ und B1 zu „Max“.

  2. Beispiel 2: Name in A2: „Schmidt/Anna“
    Nach Ausführung des Makros wird A2 zu „Schmidt“ und B2 zu „Anna“.

Diese Beispiele zeigen, wie einfach es ist, Namen zu trennen, indem Du nur eine Excel-Zelle bearbeitest.


Tipps für Profis

  • Nutze die VBA-Lösung, wenn Du regelmäßig Daten mit Vor- und Nachnamen trennen musst. So automatisierst Du den Prozess und sparst Zeit.
  • Überlege, ob Du die Ergebnisse nach dem Trennen sortieren möchtest. Das kann die Übersichtlichkeit Deiner Excel-Tabelle erhöhen.
  • Wenn Du eine große Liste hast, prüfe, ob Du die Funktion „Text in Spalten“ in Kombination mit VBA verwenden kannst, um den Prozess zu optimieren.

FAQ: Häufige Fragen

1. Kann ich auch mehrere Namen trennen?
Ja, Du kannst den VBA-Code anpassen, um mehrere Namen in einer Zelle zu trennen. Achte darauf, dass das Trennzeichen für alle Namen gleich ist.

2. Funktioniert das in allen Excel-Versionen?
Ja, die beschriebenen Methoden sind in den meisten Excel-Versionen anwendbar, solange VBA unterstützt wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige