VBA实例2 |
您所在的位置:网站首页 › c如何读取文件中的内容和内容数据 › VBA实例2 |
分享使用VBA程序读取txt文本文件的代码,txt文件的格式是UTF-8格式。 运行程序,选择需要读取的txt文件,选中后逐行读取填写至表格的A列。(数据处理部分代码可以根据实际需要修改。) 效 果 演 示 VBA 代 码 代码如下: 代码主要分为三部分,第一部分主要是获得指定的txt文本文件的路径和名称。 第二部分代码是读取文本中的内容,保存至变量中。 第三部分是将变量的内容用split函数按分行来分割,保存至数组中,可以根据实际需要来修改代码处理数据,最后再将处理完的数据保存至sheet表中。 代码语言:javascript复制Sub test() Dim objStream, strData, Arr1, i As Long Dim pathX As String, strX As String, N As Long '第一部分选中需要读取的txt文件 With Application.FileDialog(msoFileDialogFilePicker) With .Filters .Clear .Add "txt文件", "*.txt" End With .AllowMultiSelect = False If Not .Show Then Exit Sub pathX = .SelectedItems(1) End With '第二部分读取UTF-8格式的txt文件内容保存至strData变量中 '创建ADODB.Stream对象 Set objStream = CreateObject("ADODB.Stream") '指定字符集为UTF-8 objStream.Charset = "utf-8" '使用Open方法打开流对象 objStream.Open '加载文本文件 objStream.LoadFromFile (pathX) '使用ReadText返回文件内容 strData = objStream.ReadText() '第三部分用Split函数按行来分割字符串存至数组中,处理数据,然后通过循环填写至sheet表中 Arr1 = Split(strData, vbCrLf) objStream.Close Set objStream = Nothing N = 1 For i = 0 To UBound(Arr1) strX = Arr1(i) If strX "" Then Range("A" & N) = strX End If N = N + 1 Next End Sub如果已知txt文件路径,可以直接从第二部分代码开始使用,将第二部分代码其中修改为objStream.LoadFromFile ("文件完整路径")。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |