Beispiel zum Export zu .csv
30.09.2009 09:48:36
Worti
Hallo max,
ich hab mal sowas für csv-Dateien gebastelt. Ist aber leicht zum Export für TXT umzubauen:
'***********************************************************************************************
' Autor: Worti *
' Datum 23.05.2007 *
' Aufgabe: Exportiere vorgegebenen Bereich als CSV-Datei mit vorgebbarem Trennzeichen *
'***********************************************************************************************
Sub Exportiere_Bereich_in_CSV()
Dim bisZeile As Long, zeile As Long
Dim bisSpalte As Integer, Spalte As Integer
Dim Trennzeichen As String, ExportBereich As String, Ausgabe As String
Dim NewFileName
Close #1
NewFileName = Application.GetSaveAsFilename(fileFilter:="CSV Files (*.csv), *.csv")
If NewFileName False Then
Open NewFileName For Output As #1
' Hier Trennzeichen eingeben
Trennzeichen = InputBox("Bitte geben Sie das gewünschte Trennzeichen ein: ", " _
Trennzeichen", ";")
If Trennzeichen = "" Then
'Standard-Trennzeichen Semikolon
Trennzeichen = ";"
End If
'Zu exportierender Bereich
ExportBereich = InputBox("Bitte den zu exportierenden bereich eingeben: ", "Bereich", _
ActiveSheet.UsedRange.Address(False, False))
If ExportBereich = "" Then
'Wenn leer, dann benutzten Bereich exportieren
ExportBereich = ActiveSheet.UsedRange.Address
End If
bisZeile = ActiveSheet.Range(ExportBereich).Rows.Count + ActiveSheet.Range(ExportBereich) _
.Row - 1
bisSpalte = ActiveSheet.Range(ExportBereich).Columns.Count + ActiveSheet.Range( _
ExportBereich).Column - 1
For zeile = ActiveSheet.Range(ExportBereich).Row To bisZeile
Ausgabe = ""
For Spalte = ActiveSheet.Range(ExportBereich).Column To bisSpalte
Ausgabe = Ausgabe & ActiveSheet.Cells(zeile, Spalte).Value
If Spalte bisSpalte Then
Ausgabe = Ausgabe & Trennzeichen
End If
Next Spalte
Print #1, Ausgabe
Next zeile
Close #1
End If
End
Sub
Grüß Worti