MyTetra Share
Делитесь знаниями!
Функции для работы с текстовыми файлами
29.12.2017
16:37
Текстовые метки: vba,txt,text, текс
Раздел: VBA - Text

Функции для работы с текстовыми файлами


Данные функции предназначены для работы с текстовыми файлами из VBA Excel.

Используя эти функции, вы при помощи одной строки кода сможете записать текст из переменной в файл, или наоборот, загрузить содержимое текстового файла в переменную.

Чтение текстового файла в переменную:

Function ReadTXTfile(ByVal filename As String) As String

Set fso = CreateObject("scripting.filesystemobject")

Set ts = fso.OpenTextFile(filename, 1, True): ReadTXTfile = ts.ReadAll: ts.Close

Set ts = Nothing: Set fso = Nothing

End Function

Запись в текстовый файл из переменной:

Function SaveTXTfile(ByVal filename As String, ByVal txt As String) As Boolean

On Error Resume Next: Err.Clear

Set fso = CreateObject("scripting.filesystemobject")

Set ts = fso.CreateTextFile(filename, True)

ts.Write txt: ts.Close

SaveTXTfile = Err = 0

Set ts = Nothing: Set fso = Nothing

End Function

Добавление в текстовый файл из переменной:

Function AddIntoTXTfile(ByVal filename As String, ByVal txt As String) As Boolean

On Error Resume Next: Err.Clear

Set fso = CreateObject("scripting.filesystemobject")

Set ts = fso.OpenTextFile(filename, 8, True): ts.Write txt: ts.Close

Set ts = Nothing: Set fso = Nothing

AddIntoTXTfile = Err = 0

End Function



В UTF-8 сохранять так
Function SaveTXTfile(ByVal filename As String, ByVal txt As String) As Boolean
On Error Resume Next: Err.Clear
Set stream = CreateObject("ADODB.Stream")
stream.Type = 2 'text
stream.Charset = "utf-8"
stream.Open
stream.writetext Replace(txt, Chr(10), vbNewLine)
stream.savetofile filename, 2
End Function

Так же в этом разделе:
 
MyTetra Share v.0.52
Яндекс индекс цитирования