当前位置: 代码迷 >> VBA >> 请教用VBA怎么将TXT档中的数据导入EXCLE表中,多谢
  详细解决方案

请教用VBA怎么将TXT档中的数据导入EXCLE表中,多谢

热度:2401   发布时间:2013-02-26 00:00:00.0
请问用VBA如何将TXT档中的数据导入EXCLE表中,谢谢
请问如何将TXT档中的数据导入EXCLE表中,谢谢
TXT档案如下:

序号=N1
刀把=MWLNR2525M08
刀片=CNMG120408
转速=1200
进给=0.2

序号=N2
刀把=MWLNR2525M08
刀片=CNMG120408
转速=1000
进给=0.2

序号=N3
刀把=MWLNR2525M08
刀片=CNMG120408
转速=1200
进给=0.1

序号=N4
刀把=MWLNR2525M08
刀片=CNMG120408
转速=1300
进给=0.3

......

EXCLE档如下:




序号 刀把 刀片 转速 进给
1 N1 MWLNR2525M08 CNMG120408 1200 0.2
2 N2 MWLNR2525M08 CNMG120408 1000 0.2
3 N3 MWLNR2525M08 CNMG120408 1000 0.2
4 N4 MWLNR2525M08 CNMG120408 1200 0.1
5 N5 MWLNR2525M08 CNMG120408 1300 0.3



------解决方案--------------------------------------------------------
VB code
Sub InputData()    Dim Arr, Ary, k%, i%, m%    Open Application.GetOpenFilename("文本文件,*.txt", , "请选择", , False) For Input As #1    Arr = Split(StrConv(InputB(LOF(1), 1), vbUnicode), vbCrLf): Reset    ReDim Ary(1 To 5, 1 To 1)    For k = 0 To UBound(Arr)        If Arr(k) Like "序号*" Then            i = i + 1            ReDim Preserve Ary(1 To 5, 1 To i)            For m = 1 To 5                Ary(m, i) = Split(Arr(k + m - 1), "=")(1)            Next        End If    Next        [A2].Resize(i, 5) = Application.Transpose(Ary)End Sub