Excel读取Txt文件数据

TXT文件数据格式

TXT

结果

Excel

Sub ReadTXTStrings()
    Dim sLine As String'定义各个变量
    Dim sFName As String
    Dim iFNumber As Integer
    Dim lRow As Long
    Dim lColumn As Long
    Dim vValues As Variant
    Dim iCount As Integer
     'txt文件,带完整路径(和excel同一个文件夹)
    sFName = ThisWorkbook.Path & "\PD170611104100554111384.txt"    
'先清空excel工作表的数据区域
    Sheet2.UsedRange.Offset(1, 0).ClearContents
    iFNumber = FreeFile 'FreeFile函数获取txt文件的序号
    Open sFName For Input As #iFNumber '打开txt文件
    lRow = 1: k = 1 'txt数据首行  lRow
    Do '循环读取txt文件数据,一行一行读取
        Line Input #iFNumber, sLine  '读取txt数据一个整行
        If lRow > 9 Then'有效数据是从第10行开始
        k = k + 1: lColumn = 1'确定excel工作表的行和列
            vValues = Split(sLine, " ")'将整行数据按照空格分列,生成一个数组
            For Each s In vValues'遍历数组每一个元素
                If Len(s) > 0 Then'如果数组元素不为空
                    With Sheet2'将数据写入工作表
                        .Cells(k, lColumn) = s
                        lColumn = lColumn + 1'列数按1递增
                    End With
                End If
            Next
'如果txt数据一整行都是空白,那么退出DO循环.最后一行有效数据接着就是一个空行,可以作为条件不再退出不再读取txt剩余的无效数据。
            If Trim(sLine) = "" Then Exit Do
         End If
    lRow = lRow + 1'继续读取txt下一行数据
Loop Until EOF(iFNumber)
Close #iFNumber
End Sub

示例文件下载
链接: http://pan.baidu.com/s/1dFEfA73 密码: egnw

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 这是一些学习资源,里面有Android的,iOS的,PHP的,大数据的,Java的,web前端的,C++,Pyth...
    草蜢的逆袭阅读 5,355评论 1 50
  • 这是一些学习资源,里面有Android的,iOS的,PHP的,大数据的,Java的,web前端的,C++,Pyth...
    青青青青阅读 3,382评论 2 24
  • 我​​看着手里的录取通知书,想着自己再也不会受到老师的打骂和监督,心里说不出的喜悦。 就这样过了一个难忘的暑假,我...
    Ds安东阅读 527评论 0 1
  • 这好像是我第二次写这样的文章了,记得上次写的时候,我才写了七万字,那时候只是一个劲的写,并没有什么朋友,可这次不一...
    煦子阅读 1,115评论 13 7
  • 文\麦克 前段时间,和一个朋友聊天时,他突然问了我一个问题:广建,你主持了这么多场婚礼,你能跟我说说人结婚为什么要...
    麦克Studio阅读 2,087评论 0 0