Excel读取Txt文件数据

2017-07-10  本文已影响263人  叶知行

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

上一篇下一篇

猜你喜欢

热点阅读