Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1388to1392
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bestimmten Text einer Zelle ersetzen

Bestimmten Text einer Zelle ersetzen
29.10.2014 10:50:01
Muehli

Guten Morgen,
ich habe eine kurze Frage:
Form meiner Tabelle:
|SpalteA|
|Wort Wort Wort|
|Wort Wort Wort [beliebig viele Leerzeichen] F(#####)|
|Wort Wort [beliebig viele Leerzeichen]F(#####)|
|Wort|
|Wort Wort|
Wie kann ich es nun realisieren, wenn ich den Ausdruck "F(#####)" in der kompletten Spalte durch den Ausdruck "Test" ersetzt haben möchte?
Bsp:
|SpalteA|
|Wort Wort Wort|
|Wort Wort Wort [beliebig viele Leerzeichen] Test|
|Wort Wort [beliebig viele Leerzeichen] Test|
|Wort|
|Wort Wort|
Anmerkung:
Der Ausdruck "F(#####)" sieht immer so aus, ist also keine Variable.
Freundliche Grüße
Muehli

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Dann mit WECHSELN ! Gruß owT
29.10.2014 10:55:28
Luc:-?
:-?

AW: Dann mit WECHSELN ! Gruß owT
29.10.2014 11:24:29
Muehli
Hallo Luc,
danke für deine Antwort!
Ich habe es mal so versucht:
Private Sub CommandButton1_Click()
Dim i As Long
Dim TxtZelle As String
i = 1
For i = 1 To 1000
TxtZelle = Range("A" & i).Text
Range("A" & i).FormulaLocal = "=WECHSELN(TxtZelle;""F(#####)"";""Test"")"
Next i
End Sub
Aber es führt leider nicht zum gewünschten Ergebnis.
Ist mein Code totaler Murks oder ist es nur eine Kleinigkeit die fehlt?
Freundliche Grüße
Muehli

AW: Dann mit WECHSELN ! Gruß owT
29.10.2014 11:24:29
Muehli
Hallo Luc,
danke für deine Antwort!
Ich habe es mal so versucht:
Private Sub CommandButton1_Click()
Dim i As Long
Dim TxtZelle As String
i = 1
For i = 1 To 1000
TxtZelle = Range("A" & i).Text
Range("A" & i).FormulaLocal = "=WECHSELN(TxtZelle;""F(#####)"";""Test"")"
Next i
End Sub
Aber es führt leider nicht zum gewünschten Ergebnis.
Ist mein Code totaler Murks oder ist es nur eine Kleinigkeit die fehlt?
Freundliche Grüße
Muehli

Anzeige
AW: Makrorecorder
29.10.2014 11:43:31
hary
Moin
Fuer so'ne Faelle gibt es den Makrorecorder. Blattname anpassen.
worksheets("Tabelle1").Columns("A:A").Replace What:="F(#####)", Replacement:="Test", LookAt:=xlPart, SearchOrder:=xlByRows

gruss hary

Suchen + Ersetzen
29.10.2014 11:46:45
Matthias L
Hallo
Das geht doch auch ohne VBA
mit Strg+H Dialog aufrufen
Userbild
alle ersetzen - das wars schon ...


so siehts dannach aus:
Tabelle1

Substitute
29.10.2014 11:51:19
Matthias L
Hallo
Noch eine Variante
Dim TxtZelle$, TauschTxt$, NewTxt$
TxtZelle = Range("A2").Value
TauschTxt = "F(#####)|"
NewTxt = "Test"
Range("A4").Formula = Application.WorksheetFunction.Substitute(TxtZelle, TauschTxt, NewTxt)


Ergebnis:
Anzeige
Das ist dann ja wohl auch von 'hinten durch ...
29.10.2014 11:52:15
Luc:-?
…die Brust geschossen', Muehli,
obwohl es auch fktionieren würde, wenn du beachtet hättest, dass TxtZelle jetzt einen Text enthält, den die Fml aber ohne entsprd Kennzeichnung als (fehlerhaften) Namen interpretieren würde. Außerdem hast du den VariablenNamen direkt in die Fml einbezogen (diesen Namen kennt deine XlMappe nicht!), nicht ihren Inhalt! Richtig wäre also:
"=WECHSELN(""" & TxtZelle & """;""F(#####)"";""Test"")"
Aber das kann man auch einfacher haben:
Range("A" & i) = Replace(TxtZelle, "F(#####)", "Test")
Gruß, Luc :-?

AW: Bestimmten Text einer Zelle ersetzen
29.10.2014 11:45:26
Uwe Küstner
Hallo,
Private Sub CommandButton1_Click()
ActiveCell.Activate
Me.Columns(1).Replace What:="F(#####)", Replacement:="Test", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=True
End Sub
Gruß Uwe

Anzeige
AW: Bestimmten Text einer Zelle ersetzen
29.10.2014 13:02:16
Muehli
Hallo Uwe,
danke für die Antwort!
Funktioniert super!
Allen Anderen auch ein Dankeschön für die Mühe :)
Gruß
Muehli

354 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige