实用VBA:12.用VBA将txt文本文件导入Excel表格

您所在的位置:网站首页 excel读取txt文档绘图 实用VBA:12.用VBA将txt文本文件导入Excel表格

实用VBA:12.用VBA将txt文本文件导入Excel表格

2024-06-13 18:25| 来源: 网络整理| 查看: 265

1.需求场景

小伙伴们工作中时常遇到处理文本文件的情况。有些业务系统中的数据记录、日志文件、格式化输出的数据等是以txt文本文件的方式记录的。但是在进行数据处理和分析时,如果需要处理大量的文本文件、或对文本文件中特定的字段、数据等进行处理,会显得繁琐而棘手。如果能够导入到excel文件中,就可以发挥Excel进行数据统计分析功能的优势。

2.解决思路

一般此类文本文件的格式比较规范,数据按行存储,字段排列顺序一致、格式相同。可以使用VBA文件对象访问文本文件,打开文件之后,逐行读入文本,每行当做一个字符串;获取字符串之后再根据行数据各字段之间以tab分隔的特点,以tab为标记将字符串拆分为多个子串;每个子串保存在一个变量中,此处以字符串数组方式处理。到表格中,再把字符串变量逐一写入单元格中。循环处理各行数据,即实现了将txt文件导入excel的效果。灵活处理变量,简单添加逻辑代码,还可以实现对原始数据的剔除、选择、变更字段顺序等简单的处理,在文件内容导入的过程中,实现批量预处理,使导入后的数据更符合自己对数据处理的需求。

3.VBA实现     Dim wb As Workbook     Dim ws As Worksheet     Dim openFile '文本文件内容读入表格 Public Sub 文本文件内容读入表格()     '定义变量     Dim txt As String     Dim str_txt() As String     Dim sub_str() As String     Dim i, j, k, Line, endLine As Integer     '设置起始和结尾行号,即读取范围     Line = 1     endLine = 4     '设置读取文件     openFile = "D:\Temp\12-1(ANSI).txt"     '打开文件     Open openFile For Input As #1     '设置工作簿和工作表变量     Set wb = Workbooks(1)     Set ws = Worksheets("导入文件")     '激活工作表     ws.Activate     '清空工作表原有内容     ws.UsedRange.Value = ""     '循环按行读取原始txt文件数据     Do While Line


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3