Bereich in CSV-Datei speichern
Lösung #670 zum Exportieren eines Bereichs in eine Textdatei mit Trennzeichen.
Dies ist eine praktische Alternative zur Verwendung der Standardmethode von Excel, um das Arbeitsblatt als Textdatei oder CSV-getrennte Datei zu speichern, indem Sie "Speichern unter" wählen, wenn:
1. Sie verwenden eine Vorlage und möchten nur die Daten ohne Kopfzeilen und andere Dinge exportieren
2. In ähnlicher Weise möchten Sie möglicherweise nur einen Teil eines Datensatzes exportieren
3. Sie möchten die Datei mit einem benutzerdefinierten Trennzeichen speichern, das für Ihre Anwendung möglicherweise eindeutig ist.
Wenn Sie 1,2 oder 3 ausführen müssen, kann eine Funktion wie die folgende hilfreich sein. Es akzeptiert einen zu exportierenden Bereich, einen Speicherort für die Datei und das Trennzeichen, mit dem Ihre Daten getrennt werden sollen, und speichert Ihre Daten dann wie angegeben.
So rufen Sie die Funktion auf Exportbereich:
1234567891011 | UnteraufrufExport()'ExportRange(Bereich,wo,Trennzeichen)Aufruf ExportRange(Sheet1.Range("A1:C20"), _"C:mark.txt", ",")End Sub |
Zuerst teilen Sie der Funktion den Bereich mit, den Sie exportieren möchten, und dann, wohin sie exportiert werden soll, und dann das zu verwendende Trennzeichen. Du brauchst auch die Funktion Exportbereich, hier ist es:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 | Funktion ExportRange(WhatRange As Range, _Wo als String, Trennzeichen als String) Als StringDim HoldRow As Long 'Test auf neue ZeilenvariableHoldRow = WhatRange.RowDim c As Range 'Schleife durch BereichsvariableFür jedes c in WhatRangeWenn HoldRow c.Row Then'Zeilenumbruch hinzufügen und zusätzliches Trennzeichen entfernenExportRange = Left(ExportRange, Len(ExportRange) - 1) _& vbCrLf & c.Text & TrennzeichenHoldRow = c.RowAndersExportRange = ExportRange & c.Text & TrennzeichenEnde WennNächstes c'Zusätzliches Trennzeichen trimmenExportRange = Left(ExportRange, Len(ExportRange) - 1)'Datei löschen, wenn sie bereits existiertWenn Len(Dir(Where)) > 0 ThenTöte woEnde WennOpen Where For Append As #1 'Schreiben Sie die neue DateiDrucken #1, ExportRangeSchließen #1Endfunktion |