![]() |
||
![]() |
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. Um auch mit Excel 97 per VBA eine Textdatei mit Semikola als Trennzeichen zu erzeugen, mⁿssen Sie Ihre Exportroutine wie folgt anpassen: Sub exportCSV() On Error GoTo Err_exportCSV Dim mySection As Object t æ mySection Dim myRow As Object t æ Zeile Dim myCell As Object t æ Zelle Dim strSeparator As String Dim strFile As String Dim strTemp As String Const DlgMeldung = äGeben t Sie bitte Pfad und Dateit namen der Zieldatei ein!ô Const DlgTitel = äEingabe t der Zieldateiô Const Trennzeichen As t String = ä;ô strFile = InputBox(Dlgt Meldung, DlgTitel, äô) strSeparator = äô Set mySection = t ActiveSheet.UsedRange Open strFile For Output As #1 For Each myRow In t mySection.Rows For Each myCell In t myRow.Cells If InStr(1, myCell.Text,t ä;ô) > 0 Then strTemp = strTemp & t strSeparator & äôäô & t CStr(myCell.Text) & äôäô Else strTemp = strTemp & t strSeparator & CStrt (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 hCHIP-Code CSVEXPRT. |
![]() |