AW: Ist das ernst gemeint ?
08.04.2014 16:31:12
Oberschlumpf
Hi Patrick
(Begrüßung nich vergessen)
füg mal diesen Code in ein allgemeines Modul ein:
(hier zu sehende Zeilenumbrüche entfernen - sie werden von der Forumssoftware erzeugt)
Option Explicit
Sub sbCSV()
Dim lFile, lstrRow As String
lFile = Application.GetOpenFilename("CSV Files (*.csv), *.csv")
If lFile = False Then Exit Sub
Open lFile For Input As #1
Open ThisWorkbook.Path & "\dummy.txt" For Output As #2
Do While Not EOF(1)
Line Input #1, lstrRow
lstrRow = Replace(lstrRow, Chr(34), "")
lstrRow = Replace(lstrRow, "Konzernreporting/Bilanzierung und Meldewesen/", " _
Marktfolge 2")
Print #2, lstrRow
Loop
Close
Kill lFile
Name ThisWorkbook.Path & "\dummy.txt" As lFile
End Sub
Der Code macht...
...zuerst öffnet sich der Datei Auswahl-Dialog nur für CSV-Dateien
...wenn keine Datei ausgewählt, wird der Code beendet
...wenn csv-Datei ausgewählt...
......wird diese mit Open... For Input zum Lesen geöffnet
......es wird eine Datei dummy.txt zum Schreiben geöffnet
......nach und nach werden alle Zeilen aus csv-Datei eingelesen
......in jeder Zeile werden " entfernt
......in jeder Zeile wird der falsche Textteil gegen einen neuen Textteil ausgetauscht - egal, wo der zu ändernde Text steht
......die "neue Zeile" (ohne " und mit neuem Textteil) wird in die dummy.txt geschrieben
......wenn alles fertig, werden alle Dateien geschlossen
......die "alte" CSV-Datei wird gelöscht
......die Datei dummy.txt wird in den Namen der zuvor gelöschten CSV-Datei umbenannt
fertig
Hilfts?
Ciao
Thorsten