Експортувати діапазон у CSV (розділений текстовий файл) - Приклади коду VBA

Зберегти діапазон у файлі CSV

Рішення № 670 щодо того, як експортувати діапазон у текстовий файл з роздільниками.

Це зручна альтернатива використанню стандартного способу збереження робочого аркуша Excel як текстового файлу або файлу з роздільником CSV, вибравши "зберегти як", коли:

1. Ви використовуєте шаблон і хочете експортувати лише дані, виключаючи заголовки та інше

2. Аналогічно, ви можете експортувати лише частину набору даних

3. Ви хочете зберегти файл за допомогою спеціального роздільника, який може бути унікальним для вашої програми.

Якщо вам потрібно виконати 1,2 або 3, вам може допомогти така функція: Він приймає діапазон для експорту, місце розташування для збереження файлу та роздільник, за допомогою якого потрібно розділити дані, а потім зберігає ваші дані відповідно до зазначеного.

Ось як викликати функцію ExportRange:

1234567891011 Sub CallExport ()'ExportRange (діапазон, де, роздільник)Викличте ExportRange (Sheet1.Range ("A1: C20"), _"C: mark.txt", ",")End Sub

Спочатку ви повідомляєте функції діапазон, який потрібно експортувати, потім куди її експортувати, аніж деліметр для використання. Вам також знадобиться функція ExportRange, ось:

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 Функція ExportRange (WhatRange як діапазон, _Де як рядок, роздільник як рядок) як рядокТест Dim HoldRow As Long 'для нової змінної рядкаHoldRow = WhatRange.RowDim c Як діапазон 'цикл через змінну діапазонуДля кожного c У WhatRangeЯкщо HoldRow c.Row Тоді'додати розрив рядків і видалити зайвий деліметрExportRange = Вліво (ExportRange, Len (ExportRange) - 1) _& vbCrLf & c.Text & DelimiterHoldRow = c.RowІнакшеExportRange = ExportRange & c.Text & DelimiterЗакінчити ЯкщоДалі c'Обріжте додатковий роздільникExportRange = Вліво (ExportRange, Len (ExportRange) - 1)'Убийте файл, якщо він уже існуєЯкщо Len (Dir (Де))> 0 ТодіВбити деЗакінчити ЯкщоВідкрийте "Куди додати як №1", напишіть новий файлДрук №1, ExportRangeЗакрити №1Функція завершення
wave wave wave wave wave