Задача: скопировать заданную область из таблицы Excel в текстовый файл. Данные из столбцов должны разделяться знаками табуляции, данные из строк — находиться в отдельных строках.
Есть несколько способов решения данной задачи. Ниже приведён VBA код трёх вариантов.
Open ActiveWorkbook.Path & “\текстовый файл.txt” For Output As #1
bText = “Заголовок1" & vbTab & "Заголовок2" & vbTab & "Заголовок3”
Print #1, bText
For Each c In ActiveSheet.UsedRange
Print #1, c.Address(0, 0), c.Value
Next
Close #1
Для копирования в текстовый файл в формат Unicode:
Dim buffer As String
Open "C:\Unicode.txt" For Binary As #1
buffer = StrConv(strText2Write, vbUnicode) + _
StrConv(vbCrLf, vbUnicode)
Put #1, , buffer
Close #1
Ещё более простой способ сохранения в текстовый файл в юникоде:
path = "C:\"
ActiveWorkbook.SaveAs Filename:=path & "\Имя_файла.txt", _
FileFormat:=xlUnicodeText
ActiveWorkbook.Close True