Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1872to1876
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

VBA Replace verändert Zellformatierung

VBA Replace verändert Zellformatierung
10.03.2022 18:01:07
Fabian
Hallo,
in dem folgenden Beispiel möchte ich in meiner Range folgendes Suchkriterium entfernen "||*". Das klappt auch soweit, doch leider verändert das Replacement das Zellformat in ein "Custom Format", da der veränderte String einem Datum ähnelt.
Der Wert "6-9||ph" wird in "06. Jun" umgewandelt. Was ich möchte ist aber "6-9". Das Zellenformat ändert sich von "General" auf "Custom Format".
Anbei findet ihr die Screenshots. Kann mir jemand sagen wie verhindern kann, dass durch den Replace das Zellenformat verändert wird und kein Datum angezeigt wird?

Set sourceRng = ActiveSheet.Range(Cells(2, s), Cells(anzahlZeilen, s))

sourceRng.Replace What:="||*", Replacement:=""
ReplaceFormat:=False hat mir leider nicht weiter geholfen.
Da ich hier leider, warum auch immer, weder Bilddateien noch .zips oder .pdfs von meinem Mac hochladen kann, hoffe ich, dass es auch so klar wird.
Vielen Dank
Beste Grüße

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Replace verändert Zellformatierung
10.03.2022 18:09:02
Rudi
Hallo,
formatiere vorher als Text.
sourcerng.numberformat="@"
Gruß
Rudi
AW: VBA Replace verändert Zellformatierung
10.03.2022 19:14:39
Knof
Hallo Rudi,
Danke für deine schnelle Antwort. Leider ändert es nichts am Resultat. Selbst wenn ich händisch vorher das Format "Text" auswähle und das Replace danach ausführe bekomme ich noch immer "09. Jun" als Ergebnis.
LG
AW: VBA Replace verändert Zellformatierung
10.03.2022 22:18:01
Daniel
Hi
versuchs mal mit DATEN - DATENTOOLS - TEXT IN SPALTEN
als Vorarbeit: ersetze "||*" durch ";" (oder ein anders Zeichen, das im Text nicht vorkommt)
führe dann das TEXT IN SPALTEN mit folgenden Einstellungen aus
Schritt 1: Getrennt
Schritt 2: Trennzeichen Semikolon (oder das was du verwendest)
Schritt 3: Für Spalte 1 das Importformat "Text" wählen, für Spalte 2 "nicht importieren (überspringen)"
wenns funktioniert, kannst du dir das als Makro schreiben, der Recorder zeigt dir den Code (den du natürlich noch anpassen musst)
Gruß Daniel
Anzeige
AW: VBA Replace verändert Zellformatierung
10.03.2022 22:39:01
GerdL
Moin probier mal:
sourceRng.Replace What:="||*", Replacement:=vbLf, lookat:=xlPart
Gruß Gerd
Gute Idee...
10.03.2022 22:44:13
{Boris}
Hi,
...würde dann nur noch direkt den Zeilenumbruch wieder entfernen:

sourceRng.Replace What:="||*", Replacement:=vbLf, lookat:=xlPart
sourceRng.WrapText = False
VG, Boris
AW: Gute Idee...
11.03.2022 11:47:32
Knof
Moin,
Danke Gerd und Boris. Dieser Ansatz hat funktioniert.
Vielen Dank!
LG

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige