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

Forumthread: Zeichen an bestimmter Stelle im String ersetzen

Zeichen an bestimmter Stelle im String ersetzen
23.07.2014 07:41:28
urmila
Hallo zusammen,
ich brauche eure Hilfe, und zwar:
z.B. StrA = "ABCDEFG123456"
Nun würde ich gerne immer an der 7. Stelle das Zeichen durch eine Leerstelle ersetzen? Ist das möglich?
Es spielt keine Rolle, was dem String StrA zugewiesen ist, es soll immer das 7. Zeichen ersetzen... In diesem Fall wäre dann StrA = "ABCDEF 123456"
Vielen Dank und LG
Urmila

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeichen an bestimmter Stelle im String ersetzen
23.07.2014 07:45:29
Hajo_Zi
Hallo Urmila,
Du meinst VBA?
StrA=Left(StrA,6) &" " & Mid(StrA,8)

AW: Zeichen an bestimmter Stelle im String ersetzen
23.07.2014 08:19:12
urmila
Hallo Hajo,
genau danach habe ich gesucht, und ja sorry...ich meinte in VBA
Vielen lieben Dank und LG
Urmila
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
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

Zeichen an bestimmter Stelle im String ersetzen


Schritt-für-Schritt-Anleitung

Um in VBA ein Zeichen an einer bestimmten Stelle in einem String zu ersetzen, kannst du die folgende Methode verwenden. In diesem Beispiel wird das 7. Zeichen durch eine Leerstelle ersetzt.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu (Rechtsklick auf "VBAProject", dann "Einfügen" > "Modul").

  3. Kopiere den folgenden Code in das Modul:

    Sub ZeichenErsetzen()
       Dim StrA As String
       StrA = "ABCDEFG123456"
       StrA = Left(StrA, 6) & " " & Mid(StrA, 8)
       MsgBox StrA  ' Ausgabe: ABCDEF 123456
    End Sub
  4. Schließe den VBA-Editor und führe das Makro aus (ALT + F8, wähle ZeichenErsetzen und klicke auf "Ausführen").

Diese Methode verwendet die Funktionen Left und Mid, um das Zeichen an der gewünschten Position zu ersetzen.


Häufige Fehler und Lösungen

  • Fehler: "Typenkonflikt"

    • Lösung: Stelle sicher, dass der String korrekt definiert ist. Verwende Dim StrA As String vor der Zuweisung.
  • Fehler: Unerwarteter Fehler

    • Lösung: Überprüfe, ob der String lang genug ist. Wenn der String kürzer als 7 Zeichen ist, wird ein Fehler auftreten.

Alternative Methoden

Eine andere Möglichkeit, ein Zeichen in einem Excel-String zu ersetzen, ist die Verwendung von Excel-Formeln. Hier ist ein Beispiel:

  • Verwende die Formel:

    =RECHTS(A1;LÄNGE(A1)-6)  & " " & RECHTS(A1;LÄNGE(A1)-7)

Diese Formel setzt voraus, dass der Original-String in Zelle A1 steht. Sie ersetzt das 7. Zeichen durch eine Leerstelle.


Praktische Beispiele

  1. Zeichen ersetzen in einem Namen:

    • Original-String: "MaxMustermann"
    • Ersetze das 5. Zeichen:
      Sub Beispiel1()
      Dim Name As String
      Name = "MaxMustermann"
      Name = Left(Name, 4) & " " & Mid(Name, 6)
      MsgBox Name  ' Ausgabe: Max Mustermann
      End Sub
  2. Zahl in einem String anpassen:

    • Original-String: "1234567890"
    • Ersetze das 3. Zeichen:
      Sub Beispiel2()
      Dim Zahl As String
      Zahl = "1234567890"
      Zahl = Left(Zahl, 2) & " " & Mid(Zahl, 4)
      MsgBox Zahl  ' Ausgabe: 12 4567890
      End Sub

Tipps für Profis

  • Verwende die Funktion Replace, wenn du alle Vorkommen eines Zeichens ersetzen möchtest, nicht nur an einer bestimmten Stelle.
  • Um den Prozess zu automatisieren, kannst du Eingabefelder (InputBox) nutzen, um den String und die zu ersetzende Position dynamisch festzulegen.
  • Denke daran, die Excel-Version zu beachten; einige Funktionen variieren je nach Version.

FAQ: Häufige Fragen

1. Wie kann ich mehr als ein Zeichen ersetzen?
Du kannst mehrere Left und Mid Funktionen kombinieren oder die Replace-Funktion verwenden, um mehrere Vorkommen eines Zeichens zu ersetzen.

2. Funktioniert das auch in Excel-Formeln?
Ja, du kannst ähnliche Logik mit Excel-Formeln anwenden, allerdings sind die Funktionen etwas anders strukturiert.

3. Gibt es eine schnellere Methode für große Datenmengen?
Ja, VBA ist in der Regel schneller, wenn du mit großen Datenmengen arbeitest, da Excel-Formeln langsamer sein können.

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