diverse Probleme mit Textdateien

17/10/2007 - 19:49 von Matthias | Report spam
Hallo zusammen,

ich bekomme aus einer anderen Anwendung heraus Textdateien geliefert, die
ich über ein Excel-Makro veràndern möchte.
Wenn ich die Ursprungsdatei mit dem Editor öffen, sind fast alle Eintràge in
" eingeschlossen, bis auf 2 Spalten, wo nur eine Zahl steht.
Der Import funktioniert über den Assisten problemlos, wobei ich als
Texterkennungszeichen - kein - eingebe, um das Anführungszeihen zu erhalten.
Nun suche und ersetze ich Eintràge "49 durch "0.
Speichere ich die Datei nun wieder und öffne sie mit dem Editor, Sind
plötzlich 3 Anführungszeichen da.
Gebe ich beim Import als Texterkennungszeichen das Anführungszeichen an,
sind beim Speichern und anschließenden Öffnen mit dem Editor alle
Anführungszeichen verschwunden.
Also entweder 3 oder gar keins.
Wie bekomme ich das in den Griff?


PS: Noch eine alternative Frage. Kann ich bei einem Eintrag ohne
Anführungszeichen mit Suchen/Ersetzen erwingen, dass er mit nur den Eintrag
49 durch 0 ersetzt, wenn er am Anfang einer Zahl steht und nicht in der
Mitte? (Also begrenzt auf die ersten beiden Stellen einer Zahl)

Viele Fragezeichen

Gruß Matthias
 

Lesen sie die antworten

#1 Alexander Wolff
17/10/2007 - 21:53 | Warnen spam
Nun suche und ersetze ich Eintràge "49 durch "0.
Speichere ich die Datei nun wieder und öffne sie mit dem Editor, Sind
plötzlich 3 Anführungszeichen da.
Gebe ich beim Import als Texterkennungszeichen das Anführungszeichen an,
sind beim Speichern und anschließenden Öffnen mit dem Editor alle
Anführungszeichen verschwunden.



Bei Suchen/Ersetzen, WECHSELN und Replace(VBA) von " erzwingt, erfordert
oder gibt zurück Excel """. Daher Deine Beobachtung, wenn Du das einen
String kennzeichnende " selbst verarbeiten willst.

Wenn Dir das Thema Spaß macht: Suche in dieser Gruppe unter Google nach
RegEx oder Regular Expressions.

PS: Noch eine alternative Frage. Kann ich bei einem Eintrag ohne
Anführungszeichen mit Suchen/Ersetzen erwingen, dass er mit nur den
Eintrag
49 durch 0 ersetzt, wenn er am Anfang einer Zahl steht und nicht in der
Mitte? (Also begrenzt auf die ersten beiden Stellen einer Zahl)



Mit Suchen/Ersetzen über das siehst Du da alt aus.

Bei WECHSELN schaffst Du das wie folgt: =WECHSELN("#"&A1;"#49";"0")

Analog geht es mit Replace (ungetestet):

Sub Makro4()
ActiveSheet.Cells.Replace What:="#49", _
Replacement:="0", _
LookAt:=xlPart, _
SearchOrder:=xlByRows, _
MatchCase:=False, _
SearchFormat:=False, _
ReplaceFormat:=False
End Sub
Moin+Gruss Alexander - MVP für MS Excel - www.xxcl.de - mso2000sp3 --7-2

Ähnliche fragen