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

Forumthread: Text von Zahl trennen

Text von Zahl trennen
07.07.2005 11:48:10
Zahl
Hallo
Wie kann ich per VBA einen Text von einer Zahl trennen. Text und Zahl haben unterschiedliche Längen und sind mit einem Leerschlag getrennt (zB. "Re 2345").
Text/Zahl steht in Spalte C, ich möchte den Text in Spalte B und die Zahl in Spalte C schreiben.
Gibt es auch eine Möglichkeit, wenn kein Leerschlag zwischen Text und Zhal.
Habe im Forum gesucht, aber nicht's gefunden.
Vielen Dank und Gruss
Gregor
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Text von Zahl trennen
07.07.2005 12:03:00
Zahl
Hi Gregor,
folgender Code funktioniert in beiden Fällen, mit und ohne Leerzeichen:

Sub trennen()
Dim a As Integer
Dim b As Integer
For a = 1 To Cells(65536, 3).End(xlUp).Row
For b = 1 To Len(Cells(a, 3).Value)
If IsNumeric(Mid(Cells(a, 3).Value, b, 1)) Then Exit For
Next b
Cells(a, 2).Value = Left(Cells(a, 3).Value, b - 1)
Cells(a, 3).Value = Right(Cells(a, 3).Value, (Len(Cells(a, 3).Value) - (b - 1)))
Next a
End Sub

Allerdings muss der Text immer VOR der Zahl stehen.
Schönen Gruß,
Andi
Anzeige
AW: Text von Zahl trennen
07.07.2005 12:14:54
Zahl
Andi
Herzlichen Dank für die schnelle Antwort. Funktioniert perfekt.
Gregor
Gern geschehen... (ot)
07.07.2005 13:26:25
Andi
.
AW: Text von Zahl trennen
07.07.2005 14:28:11
Zahl
Hallo,
hier eine Variante, bei der es egal ist, ob der Text vor oder nach der Zahl steht und ob überhaupt beide vorkommen.
Dien einzelnen Ziffern werden in der Variablen z gespeichert, die Buchstaben in der Variablen t:

Sub Text_Zahl()
Dim i%, j%, z&, t$
For i = 1 To Cells(65536, 3).End(xlUp).Row
For j = 1 To Len(Cells(i, 3).Value)
If IsNumeric(Mid(Cells(i, 3).Value, j, 1)) Then
z = z & Mid(Cells(i, 3).Value, j, 1)
Else
t = t & Mid(Cells(i, 3).Value, j, 1)
End If
Next j
Cells(i, 4).Value = z
Cells(i, 5).Value = t
z = 0
t = ""
Next i
End Sub

Gruß
Heinz
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Text von Zahl trennen in Excel


Schritt-für-Schritt-Anleitung

Um Text von Zahlen in Excel zu trennen, kannst Du VBA (Visual Basic for Applications) nutzen. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne das Excel-Dokument mit den Daten in Spalte C, wo Text und Zahlen kombiniert sind.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Füge ein neues Modul hinzu:

    • Rechtsklick auf „VBAProject (DeinDokumentName)“ → Einfügen → Modul.
  4. Kopiere und füge den folgenden Code ein:

    Sub trennen()
       Dim a As Integer
       Dim b As Integer
       For a = 1 To Cells(65536, 3).End(xlUp).Row
           For b = 1 To Len(Cells(a, 3).Value)
               If IsNumeric(Mid(Cells(a, 3).Value, b, 1)) Then Exit For
           Next b
           Cells(a, 2).Value = Left(Cells(a, 3).Value, b - 1)
           Cells(a, 3).Value = Right(Cells(a, 3).Value, (Len(Cells(a, 3).Value) - (b - 1)))
       Next a
    End Sub
  5. Schließe den VBA-Editor und gehe zurück zu Excel.

  6. Führe das Makro aus:

    • Drücke ALT + F8, wähle „trennen“ und klicke auf „Ausführen“.

Damit wird der Text in Spalte B und die Zahl in Spalte C geschrieben.


Häufige Fehler und Lösungen

  • Fehler: Makro funktioniert nicht
    Lösung: Stelle sicher, dass Du das Makro in der richtigen Excel-Version ausführst und dass die Daten in Spalte C korrekt formatiert sind.

  • Problem: Leerzeichen zwischen Text und Zahl
    Lösung: Der oben genannte Code funktioniert sowohl mit als auch ohne Leerzeichen zwischen Text und Zahl.


Alternative Methoden

Wenn Du keine VBA-Programmierung verwenden möchtest, kannst Du auch Excel-Formeln nutzen:

  1. Für Text:

    =LINKS(C1;FINDEN(1;C1&1)-1)
  2. Für Zahl:

    =RECHTS(C1;LÄNGE(C1)-FINDEN(1;C1&1)+1)

Diese Formeln helfen Dir, den Text und die Zahl aus einer Zelle zu entkoppeln, ohne VBA zu verwenden.


Praktische Beispiele

  • Beispiel 1: Du hast in Zelle C1 den Wert "Re 2345". Nach der Anwendung des VBA-Codes oder der Formeln erhältst Du "Re" in B1 und "2345" in C1.
  • Beispiel 2: Bei "Test123" in C2 wird "Test" in B2 und "123" in C2 geschrieben.

Tipps für Profis

  • Automatisiere den Prozess: Wenn Du regelmäßig Daten trennen musst, kannst Du das VBA-Makro in ein Add-In umwandeln, um es einfacher zugänglich zu machen.
  • Verwende die Funktion TEXT(): Damit kannst Du sicherstellen, dass die Zahlen im gewünschten Format angezeigt werden, wenn Du sie in andere Zellen überträgst.

FAQ: Häufige Fragen

1. Wie trenne ich Zahlen und Text in Excel ohne VBA?
Du kannst Formeln wie LINKS() und RECHTS() verwenden, um Text und Zahlen ohne VBA zu entkoppeln.

2. Funktioniert das Trennen auch bei gemischten Inhalten?
Ja, die VBA-Methoden und Formeln funktionieren auch, wenn sowohl Text als auch Zahlen in der Zelle vorhanden sind.

3. Was mache ich, wenn mein Text und meine Zahl direkt nebeneinander stehen?
Der bereitgestellte VBA-Code trennt Text und Zahlen auch, wenn sie direkt ohne Leerzeichen aneinander stehen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige