viele .xls nach .csv konvertieren, moeglichst batch mode

05/02/2009 - 10:31 von Peter Hermann | Report spam
viele .xls nach .csv konvertieren, moeglichst batch mode

in einem Ordner habe ich mehr als drei Dutzend *.xls file
und moechte deren .csv-Pendant auf einen Schlag erhalten.
geht das?
 

Lesen sie die antworten

#1 Jörg
05/02/2009 - 13:11 | Warnen spam
Hallo Peter

M.E. ist die einzige Möglichkeit, die Daten per VBA zu konvertieren.
Dazu gibt es prinzipiell mehrere Möglichkeiten

1. Aufzeichnen des eines Vorgangs --> Extra/Makro/Aufzeichnen (Office
XP)
Dann müsstest Du in etwa so was erhalten
2. Im visual-basic-Editor den Dateiname durch eine Variable ersetzen
3. In einer Exceltabelle entweder alle Daten einlesen lassen oder alle
Daten von Hand eintragen.
Beispiel für das einlesen der Daten http://www.vbarchiv.net/tipps/details.php?ida7

So könnte ein Makro aussehen.

Voraussetzungen:
* im Tabellenblatt Dateien sind in der Spalte a alle Dateinamen
aufgelistet, die zu konvertieren sind.
* Alle besitzen keine Dateiendung
* Der Ordner in dem sich diese Dateien befindet ist "C:
\DORT_WO_DIE_DATEIEN_LIEGEN\"
Es wird dringend empfohlen, dies in einer Kopie des originalen
Ordners durchzuführen

Sub Datenkonvertieren()
Sheets("Dateien").Select
Range("a1").Select
Pfaqd = "C:\DORT_WO_DIE_DATEIEN_LIEGEN\"
Do while activeCell.Value<>""
Dateiname_Ohne_Endung =ActiveCell.Value
Workbooks.Open Filename:=Pfad & Dateiname_Ohne_Endung & ".xls"
ActiveWorkbook.SaveAs Filename:=Pfad & Dateiname_Ohne_Endung &
".csv", _
FileFormat:=xlCSV, CreateBackup:=False
ActiveCell.Offset(1,0).Select
loop
end sub


Je nach Struktur, könnte auch ein Datenbankzugriff auf die Exceldaten
schneller sein.


Gruß

Jörg

Ähnliche fragen