z3r0c0mm4n0thin6
Goto Top

Reguläre Ausdrücke beim Suchen und Ersetzen in Excel des ersten Zeichens

Hallo zusammen,

ich stelle mich gerade selten dämlich an, bei folgendem Beispiel:

WARM30G-1-2-3
KALT-2-3-4

Ich möchte nun ausschließlich das erste - in den Zeilen ersetzen durch ein ;

Wie würdet ihr es mit Suchen und Ersetzen anstellen?


Beste Grüße,
0,-

Content-ID: 381755

Url: https://administrator.de/contentid/381755

Ausgedruckt am: 25.11.2024 um 11:11 Uhr

erikro
Lösung erikro 30.07.2018 aktualisiert um 16:27:07 Uhr
Goto Top
Moin,

das geht mit Excels Suchen und Ersetzen m. W. nicht. Entweder nimmst Du VBA oder Du schreibst z. B. in die Spalte daneben folgende Formel:

=RECHTS(A2;LÄNGE(A2)-1)

Wobei Dein ursprünglicher Ausdruck in A2 steht.

<edit>Es ist zu heiß. Die Formel muss natürlich heißen:

= ";" & RECHTS(A2;LÄNGE(A2)-1)  

</edit>

hth

Erik
colinardo
Lösung colinardo 30.07.2018 aktualisiert um 18:18:27 Uhr
Goto Top
Servus.
Leider bietet die Suchen/Ersetzen Funktion kein echtes Regex an da musst du anders ran:

Entweder Hilfspalte daneben pappen mit :
=ERSETZEN(A1;FINDEN("-";A1);1;";")  
und dann runter ziehen.
Alternativ mit einer VBA Funktion die sich dann als Formel nutzen lässt:
Public Function ReplaceFirstDash(rng As Range)
    ReplaceFirstDash = Replace(rng.Value, "-", ";", 1, 1, vbTextCompare)  
End Function
In einer Zelle dann bspw. wieder nutzen mit
=ReplaceFirstDash(A1)
Und wieder ziehen.
Oder eben ein InPlace-Replace mit VBA machen (Bereich erst markieren und dann Makro ausführen!):
Sub ReplaceFirstDashInSelectedRange()
    for each cell in Selection
        cell.Value =  Replace(cell.Value, "-", ";", 1, 1, vbTextCompare)  
    next
End Sub

Grüße Uwe
Z3R0C0MM4N0THiN6
Z3R0C0MM4N0THiN6 30.07.2018 um 20:12:30 Uhr
Goto Top
Hallo erikro,
Hallo colinardo,

vielen Dank für Eure Zeit und Mühe.

Einstweilen habe ich dank Euch verstanden und die Kraft aufgegeben dass es kein Regex in MSO Excel gibt face-sad

Dennoch wäre das eine Alternative, als template für spätere Automatisierung worin es dann aber Regex gibt. face-smile

Vielen Dank Euch beiden!