![]() |
||
![]() |
Tabellen mit VBA als Textdateien exportierenMit Hilfe eines VBA-Programms möchten Sie eine Excel-Tabelle ins Textformat speichern. Dabei sollen die Spalten durch ein Semikolon getrennt sein. Das Problem: Das VBA-Programm nutzt nur Kommata zum Unterteilen. Das ist ein Fehler von Excel 97 beim Speichern von CSV-Dateien, die als Trennzeichen das Semikolon verwenden. Während das Programm beim Speichern über »Datei | Speichern unter« mit dem Strichpunkt arbeitet, nutzt das englische VBA fälschlicherweise das englische Trennzeichen – also ein Komma. In Excel 2000 ist dieses Problem behoben. Sub exportCSV() On Error GoTo Err_exportCSV Dim mySection As Object ‘ mySection Dim myRow As Object ‘ Zeile Dim myCell As Object ‘ Zelle Dim strSeparator As String Dim strFile As String Dim strTemp As String Const DlgMeldung = „Geben Sie bitte Pfad und Dateinamen der Zieldatei ein!“ Const DlgTitel = „Eingabe der Zieldatei“ Const Trennzeichen As String = „;“ strFile = InputBox(DlgMeldung, DlgTitel, „“) strSeparator = „“ Set mySection = ActiveSheet.UsedRange Open strFile For Output As #1 For Each myRow In mySection.Rows For Each myCell In myRow.Cells If InStr(1, myCell.Text, „;“) > 0 Then strTemp = strTemp & strSeparator & „“„“ & CStr(myCell.Text) & „“„“ Else strTemp = strTemp & strSeparator & CStr(myCell.Text) End If strSeparator = Trennzeichen Next Print #1, strTemp strTemp = „“ strSeparator = „“ Next Close #1 Set mySection = Nothing Exit_exportCSV: Exit Sub Err_exportCSV: MsgBox Err.Description Resume Exit_exportCSV End Sub Das gesamte Listing finden Sie auf der Heft-CD CHIP-Code CSVEXPRT. |
![]() |