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

Forumthread: Suchen und Ersetzen nur bei erster Fundstelle

Suchen und Ersetzen nur bei erster Fundstelle
18.11.2013 17:22:07
Thomas
Hallo,
folgendes Problem möchte ich per VBA lösen.
Der String in der Zelle ist folgendermaßen aufgebaut: ABC/DEF/GHI/JKL. Per VBA Lösung soll nur der erste gefundene Schrägstrich durch einen Bindestrich ersetzt werden-also dann soll es so aussehen: ABC-DEF/GHI/JKL.
Wie kann man das lösen?
Thomas

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
VBA? das geht doch auch mit einer Formel ...
18.11.2013 17:35:59
Matthias
Hallo
Tabelle1

 AB
1 ABC/DEF/GHI/JKL ABC-DEF/GHI/JKL

Formeln der Tabelle
ZelleFormel
B1=ERSETZEN(A1;FINDEN("/";A1);1;"-")


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Matthias

Anzeige
AW: VBA? das geht doch auch mit einer Formel ...
18.11.2013 17:56:33
Thomas
Hallo,
danke für die Formel. Ich schrieb deshalb mit VBA, da die zu bearbeitende Tabelle ca. 4000 Zeilen hat.
Aber da kann mal sicher FormulaLocal nutzen.
Thomas

Soll das ein Scherz sein?
18.11.2013 18:02:39
EtoPHG
Hallo Thomas,
Was hat den das mit 4000 Zeilen zu tun?
VBA wird auf jeden Fall langsamer sein als die einfache Formel: =WECHSELN(A1;"/";"-";1) auf 4000 Zeilen kopiert!
Oder was glaubst du macht VBA schneller?
Gruess Hansueli

Anzeige
ok ... , wechseln ist besser/kürzer als Ersetzen
18.11.2013 18:13:03
Matthias
Hallo
mit VBA kann er es dann so machen:
With Application.WorksheetFunction Range("B1") = .Substitute(Range("A1"), "/", "-", 1) End With Gruß Matthias

mit VBA -> Replace & Find ...
18.11.2013 18:05:35
Matthias
Hallo
Dann kannst Du es auch so machen.
Dein Dtring steht in A1
With Application.WorksheetFunction
Range("B1") = .Replace(Range("A1"), .Find("/", Range("A1")), 1, "-")
End With
Gruß Matthias

Anzeige
AW: mit VBA -> Replace & Find ...
18.11.2013 22:44:38
Thomas
Hallo,
danke für die Tipps.
Gruß Thomas
;

Forumthreads zu verwandten Themen

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

Suchen und Ersetzen nur bei erster Fundstelle


Schritt-für-Schritt-Anleitung

Um in Excel nur das erste Vorkommen eines bestimmten Zeichens, wie z.B. eines Schrägstrichs, durch einen anderen Zeichen zu ersetzen, kannst du die folgende Formel verwenden. Diese Methode eignet sich besonders, wenn du nur in einer bestimmten Spalte arbeiten möchtest.

  1. Öffne Excel und gehe zu der Tabelle, in der du das Zeichen ersetzen möchtest.
  2. Gib in eine neue Zelle (z.B. B1) die folgende Formel ein, um den ersten Schrägstrich durch einen Bindestrich zu ersetzen:
    =ERSETZEN(A1;FINDEN("/";A1);1;"-")
  3. Drücke Enter. Die Zelle zeigt nun den modifizierten Text an.
  4. Um diese Formel auf mehrere Zeilen anzuwenden, ziehe das Ausfüllkästchen in der Ecke der Zelle nach unten.

Wenn du mit VBA arbeiten möchtest, um eine große Datenmenge (z.B. 4000 Zeilen) zu bearbeiten, kannst du den folgenden Code verwenden:

With Application.WorksheetFunction
    Range("B1") = .Replace(Range("A1"), .Find("/", Range("A1")), 1, "-")
End With

Häufige Fehler und Lösungen

  • Fehler: #WERT!-Fehler in der Zelle.

    • Lösung: Überprüfe, ob das Zeichen, das du suchst (z.B. "/"), tatsächlich im Text vorhanden ist.
  • Fehler: Das Zeichen wird nicht ersetzt.

    • Lösung: Stelle sicher, dass die Formel korrekt eingegeben wurde und dass du die richtigen Zellreferenzen verwendest.

Alternative Methoden

Es gibt auch andere Möglichkeiten, das erste Zeichen in einem Text zu ersetzen. Du kannst die WECHSELN-Funktion verwenden, die oft einfacher ist:

=WECHSELN(A1; "/"; "-"; 1)

Diese Formel ersetzt ebenfalls nur das erste Vorkommen des Schrägstrichs.

Wenn du nur in einem markierten Bereich suchen und ersetzen möchtest, kannst du die Option "Suchen und Ersetzen" im Menü verwenden, um die gewünschten Änderungen vorzunehmen.


Praktische Beispiele

Beispiel 1: Ersetzen in einer Spalte

Angenommen, du hast die folgenden Werte in Spalte A:

A B
ABC/DEF/GHI/JKL ABC-DEF/GHI/JKL
XYZ/123/456 XYZ-123/456

Für die Zelle B1 gib die Formel =ERSETZEN(A1;FINDEN("/";A1);1;"-") ein und ziehe nach unten.

Beispiel 2: VBA für große Datenmengen

Wenn du mit einer Tabelle mit 4000 Zeilen arbeitest, kannst du den VBA-Code verwenden, um Zeit zu sparen. Du kannst den Code einfach in das VBA-Modul einfügen und ausführen.


Tipps für Profis

  • Verwende die Formel lokal: Wenn du mit anderen Sprachen arbeitest, achte darauf, die richtigen Trennzeichen für Funktionen zu verwenden (z.B. Semikolon statt Komma).
  • Testen: Probiere die Formeln zuerst in einer Testtabelle aus, um sicherzustellen, dass sie wie gewünscht funktionieren, bevor du sie auf große Datenmengen anwendest.
  • Kombiniere Funktionen: Du kannst die FINDEN- und ERSETZEN-Funktionen kombinieren, um noch komplexere Ersetzungen vorzunehmen.

FAQ: Häufige Fragen

1. Kann ich das erste Zeichen ersetzen? Ja, du kannst die ERSETZEN-Funktion verwenden, um das erste Zeichen in einer Zelle zu ändern, indem du die Position 1 angibst.

2. Wie kann ich nur in einer bestimmten Spalte suchen und ersetzen? Du kannst die Excel-Funktion Suchen und Ersetzen verwenden und dabei die gewünschte Spalte markieren, um nur in diesem Bereich Änderungen vorzunehmen.

3. Gibt es einen Shortcut für Suchen und Ersetzen in Word? Ja, der Shortcut für Suchen und Ersetzen in Word ist Strg + H.

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