Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Einen String Zerlegen

Einen String Zerlegen
18.05.2005 10:30:44
MichaelP
Guten Tag zusammen,
ich habe nur eine kurze einfache Frage?
Ich habe mir einen String gebaut, welchen ich an eine Funktion übergeben
String : S1/11/Hallo
Ich möchte deisen String nun wieder zerlegen. und die einzelnen Werte in einer Variablen speicher
Ergebnis:
Var1= S1
Var2 = 11
Var3 = Hallo
Ich danke Euch für Eure Hilfe.
Gruß
Michael
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Einen String Zerlegen
18.05.2005 10:44:55
bst
Morgen Michael,
nimm die VBA Funktion SPLIT.
cu, Bernd
--
Option Explicit

Sub x()
y "S1/11/Hallo"
End Sub


Sub y(s As String)
Dim i As Integer, z() As String
z = Split(s, "/")
For i = 0 To UBound(z)
Debug.Print i, z(i)
Next
End Sub

Anzeige
AW: Einen String Zerlegen
18.05.2005 10:48:28
Reinhard
Hallo Michael,
schau mal in der vba-Hilfe nach split.
Gruß
Reinhard
AW: Einen String Zerlegen
18.05.2005 10:54:07
UweD
Hallo
so gehts:

Sub zerlege()
Dim Strg$, P1%, P2%, Var1$, Var2$, Var3$
Strg = "S1/11/Hallo"
P1 = Application.Find("/", Strg, 1) 'Pos vom ersten /
P2 = Application.Find("/", Strg, P1 + 1) 'Pos vom zweiten /
Var1 = Left(Strg, P1 - 1)
Var2 = Mid(Strg, P1 + 1, P2 - 1 - P1)
Var3 = Mid(Strg, P2 + 1)
End Sub

Gruß aus Siegen
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

String Zerlegen in Excel VBA


Schritt-für-Schritt-Anleitung

Um einen String in Excel VBA zu zerlegen, kannst Du die Split-Funktion verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne den VBA-Editor:

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

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

    Sub ZerlegeString()
       Dim s As String
       Dim Teile() As String
    
       s = "S1/11/Hallo"
       Teile = Split(s, "/")
    
       Dim Var1 As String, Var2 As String, Var3 As String
       Var1 = Teile(0)
       Var2 = Teile(1)
       Var3 = Teile(2)
    
       Debug.Print Var1, Var2, Var3
    End Sub
  4. Führe das Makro aus:

    • Drücke F5, um das Makro auszuführen. Du siehst die Ergebnisse im Direktfenster.

Mit dieser Methode hast Du den String erfolgreich in drei Teile zerlegt: Var1, Var2 und Var3.


Häufige Fehler und Lösungen

  • Problem: Fehler beim Ausführen des Makros.

    • Lösung: Überprüfe, ob Du die richtige Syntax verwendest und ob die Split-Funktion korrekt aufgerufen wird.
  • Problem: Der String wird nicht korrekt zerlegt.

    • Lösung: Stelle sicher, dass das Trennzeichen in der Split-Funktion mit dem Trennzeichen im String übereinstimmt.

Alternative Methoden

Neben der Split-Funktion gibt es auch andere Ansätze, um einen String in Excel VBA zu zerlegen:

  1. Verwendung von Find: Mit der Find-Methode kannst Du die Position der Trennzeichen suchen und den String manuell aufteilen. Beispiel:

    Sub ManuellZerlegen()
       Dim Strg As String
       Dim P1 As Integer, P2 As Integer
       Dim Var1 As String, Var2 As String, Var3 As String
    
       Strg = "S1/11/Hallo"
       P1 = InStr(1, Strg, "/")
       P2 = InStr(P1 + 1, Strg, "/")
    
       Var1 = Left(Strg, P1 - 1)
       Var2 = Mid(Strg, P1 + 1, P2 - P1 - 1)
       Var3 = Mid(Strg, P2 + 1)
    
       Debug.Print Var1, Var2, Var3
    End Sub
  2. Excel-Formel: Du kannst auch Excel-Formeln verwenden, um einen String zu zerlegen. Zum Beispiel:

    • In Zelle A1: =LINKS("S1/11/Hallo";FINDEN("/";"S1/11/Hallo")-1)
    • In Zelle B1: =TEIL("S1/11/Hallo";FINDEN("/";"S1/11/Hallo")+1;FINDEN("/";"S1/11/Hallo";FINDEN("/";"S1/11/Hallo")+1)-FINDEN("/";"S1/11/Hallo")-1)

Praktische Beispiele

Hier sind einige praktische Beispiele, wie Du die Funktion Split nutzen kannst, um verschiedene Strings zu zerlegen:

  1. Beispiel mit einem anderen Trennzeichen:

    Sub BeispielMitKomma()
       Dim s As String
       Dim Teile() As String
    
       s = "Apfel,Banane,Kirsche"
       Teile = Split(s, ",")
    
       Debug.Print Teile(0), Teile(1), Teile(2) ' Ausgabe: Apfel, Banane, Kirsche
    End Sub
  2. Zerlegen eines Strings ohne Trennzeichen: In diesem Fall musst Du die Logik anpassen, um die Zeichen in Gruppen zu unterteilen.


Tipps für Profis

  • Verwende die Join-Funktion, um die Teile wieder zusammenzufügen, falls nötig:

    Dim NeuerString As String
    NeuerString = Join(Teile, "-") ' Fügt die Teile mit "-" zusammen
  • Handle mehrere Trennzeichen: Wenn Du Strings mit verschiedenen Trennzeichen hast, kannst Du die vba split Funktion anpassen, um damit umzugehen.

  • Vermeide magische Zahlen: Setze Konstanten oder Variablen für Trennzeichen, um die Lesbarkeit zu erhöhen.


FAQ: Häufige Fragen

1. Wie kann ich einen String in Excel zerlegen, wenn die Trennzeichen variieren?
Du kannst mehrere Split-Aufrufe um eine Schleife verwenden, um alle Trennzeichen zu behandeln.

2. Kann ich die Split-Funktion auch in Access VBA verwenden?
Ja, die Split-Funktion ist auch in Access VBA verfügbar und funktioniert ähnlich wie in Excel VBA.

3. Was mache ich, wenn mein String keine Trennzeichen hat?
In diesem Fall musst Du die Zeichen manuell aufteilen, indem Du die Left, Mid und Right-Funktionen verwendest.

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