Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: string ab leerzeichen trennen - vba/excel

string ab leerzeichen trennen - vba/excel
06.04.2005 14:09:58
flostel
hallo zusammen,
würde gern den den linken teil eines strings, der durch ein leerzeichen getrennt ist "herauslösen" und
ihn dann in eine zahl verwandeln.
mit dieser formel ist es nicht möglich, weil SEARCH im vba-code nicht geht
=LEFT(M7;SEARCH("";M7))/G7
danke
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: string ab leerzeichen trennen - vba/excel
06.04.2005 14:16:59
u_
Hallo,
nicht SEARCH sondern INSTR
Gruß
AW: string ab leerzeichen trennen - vba/excel
06.04.2005 14:19:10
flostel
danke .. funkt.
umwandeln in zahl mit cint .. oder?
AW: string ab leerzeichen trennen - vba/excel
06.04.2005 14:23:23
u_
Hallo,
wenn es eine Ganzzahl im Bereich -32768 bis 32767 ist.
Multipliziere doch einfach mit 1.
Gruß
Anzeige
AW: string ab leerzeichen trennen - vba/excel
06.04.2005 14:22:22
Frank
Hallo,
versuche es mal so:

Sub Test()
MsgBox Val("123 ABC")
End Sub

"Val" ignoriert alles nach dem Leerzeichen.
Viel Erfolg
Frank.
;
Anzeige
Anzeige

Infobox / Tutorial

String ab Leerzeichen trennen in Excel VBA


Schritt-für-Schritt-Anleitung

Um einen String ab dem Leerzeichen in Excel VBA zu trennen, kannst du die Funktion INSTR 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:

    Sub StringAbLeerzeichen()
       Dim str As String
       Dim position As Integer
       Dim teilstring As String
    
       str = "123 ABC" ' Dein Beispielstring
       position = InStr(str, " ") ' Finde die Position des Leerzeichens
    
       If position > 0 Then
           teilstring = Left(str, position - 1) ' Extrahiere den Teilstring
           MsgBox "Der linke Teil des Strings ist: " & teilstring
       Else
           MsgBox "Kein Leerzeichen gefunden."
       End If
    End Sub
  4. Führe das Makro aus: Du kannst das Makro mit F5 oder über das Menü Ausführen ausführen.

Mit diesem Code wird der linke Teil des Strings ab dem ersten Leerzeichen extrahiert. Du kannst den teilstring dann weiter verarbeiten, um ihn in eine Zahl umzuwandeln.


Häufige Fehler und Lösungen

  • Problem: Der Code gibt eine Fehlermeldung zurück.

    • Lösung: Überprüfe, ob der String tatsächlich ein Leerzeichen enthält. Ein Leerzeichen muss vorhanden sein, damit INSTR die richtige Position finden kann.
  • Problem: Der Teilstring wird nicht korrekt extrahiert.

    • Lösung: Stelle sicher, dass du die richtige Position des Leerzeichens mit InStr ermittelst und den Left-Befehl korrekt anwendest.

Alternative Methoden

Eine andere Möglichkeit, Strings ab einem Leerzeichen zu trennen, ist die Verwendung der Val-Funktion:

Sub BeispielVal()
    MsgBox Val("123 ABC") ' Gibt 123 zurück
End Sub

Diese Methode ignoriert alles nach dem Leerzeichen und gibt nur den numerischen Teil zurück. Diese Vorgehensweise ist nützlich, wenn du nur den Zahlenwert benötigst.


Praktische Beispiele

Hier sind einige praktische Beispiele, wie du Strings ab Leerzeichen mit Excel VBA trennen kannst:

  1. Beispiel mit einer Zellreferenz:

    Sub BeispielMitZelle()
       Dim str As String
       str = Range("A1").Value ' Angenommen, A1 enthält "456 DEF"
       MsgBox "Der linke Teil ist: " & Left(str, InStr(str, " ") - 1)
    End Sub
  2. Beispiel mit Umwandlung in eine Zahl:

    Sub UmwandlungInZahl()
       Dim str As String
       Dim zahl As Long
       str = "789 GHI"
       zahl = Val(str) ' Wandelt in Zahl um
       MsgBox "Die Zahl ist: " & zahl
    End Sub

Tipps für Profis

  • Achte darauf, die Länge eines Strings zu überprüfen, bevor du mit dem Teilen beginnst. Du kannst die Funktion Len verwenden, um die Länge zu bestimmen.

  • Verwende Trim, um überflüssige Leerzeichen vor oder nach dem String zu entfernen, bevor du die Trennung vornimmst:

    Dim str As String
    str = Trim(Range("A1").Value)
  • Experimentiere mit der Kombination von InStr und Mid, um flexiblere Möglichkeiten zur Bearbeitung von Strings zu schaffen.


FAQ: Häufige Fragen

1. Wie kann ich den rechten Teil des Strings erhalten? Mit der Funktion Mid kannst du den rechten Teil des Strings erhalten, indem du die Startposition nach dem Leerzeichen angibst.

2. Was ist der Unterschied zwischen Val und CInt? Val konvertiert einen String in einen numerischen Wert, ignoriert jedoch alles nach dem ersten nicht-numerischen Zeichen. CInt hingegen wandelt den gesamten String in eine Ganzzahl um, wenn er nur Zahlen enthält.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige