Bereich in CSV (getrennte Textdatei) exportieren - VBA-Codebeispiele

Inhaltsverzeichnis

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
wave wave wave wave wave