Задача: скопировать заданную область из таблицы 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

Ещё варианты:

Order_macros

Теги:
 

1 Комментарий » в “Сохранение данных из таблицы Excel в текстовый файл при помощи VBA”

  1. Евгений:
    Sub названия()
       Set fs = CreateObject("Scripting.FileSystemObject")
       Set a = fs.CreateTextFile("C:trтранспорт.xls", True)
     
       Kod = CStr(Cells(i, 1).Value)
        Do While Kod  "" 'задаешь цикл обработки
       'пишешь условия 
       'задаешь значения тега
     тег = "" & W & "" & ad & ""
     a.WriteLine(тег)
    a.Close   'конец тега
    'конец цикла
    End Sub

    вообщем используешь HTML разметку

Комментировать