vba txt读写的几种方式

四种方式写txt

1、这种写出来的是ANSI格式的txt

   Dim TextExportFile As String
    
    TextExportFile = ThisWorkbook.Path & "\lcx.txt"
    
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set f = fs.CreateTextFile(TextExportFile, True)

    f.WriteLine "罗彩霞:lcx"
    f.Close

2、这种是Unicode格式

    Dim TextExportFile As String
    
    TextExportFile = ThisWorkbook.Path & "\lcx.txt"
    
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set f = fs.CreateTextFile(TextExportFile, True, True)

    f.WriteLine "罗彩霞:lcx"
    f.Close

3、这种是UTF-8格式的

Sub WriteTxt(path_, Filename, k)

    Dim tss As String
     
    'Filename = Application.GetSaveAsFilename(fileFilter:="Text Files (*.txt), *.txt")
    
    Open path_ & "\" & Filename For Output As #1
     
    For i = 1 To k
        If Cells(i, 4).Value <> "" Then
            tss = Cells(i, 4) & vbTab & Cells(i, 5) & vbTab & Cells(i, 6) & vbTab & Cells(i, 7) & vbTab & Cells(i, 8) & vbTab & Cells(i, 9)
            Print #1, tss
        End If
    Next
     
    Close #1
    
End Sub

4、这种方式可以设置字符格式

Sub WriteUTF8()
    Dim WriteStream As Object
    Set WriteStream = CreateObject("ADODB.Stream")
    With WriteStream
        .Type = 2               'adTypeText
        .Charset = "UTF-8"
        .Open
        .WriteText "你好utf-8"
        .SaveToFile ThisWorkbook.path & "\1.txt", 2  'adSaveCreateOverWrite
        .Flush
        .Close
    End With
    Set WriteStream = Nothing
End Sub

 

posted @ 2019-03-01 17:57  1156740846  阅读(5880)  评论(0编辑  收藏  举报