如何从1000个TXT文档中提取每个TXT里第二行和第102行数据,生成excel文件,并且分列

如题,有很多TXT文档,我需要提取其中的特定行的数据,自己在网上看了VBA和Replace Pioneer这2个方法,一个是不会写编码,另一个完全就不会用,请大神告知如何,生成的excel的文档,要求分列。
2026年09月18日 02:05
有2个网友回答
网友(1):

Sub test()
Dim wb As Workbook, arr(1 To 60000, 1 To 6), jL As Long, crr, tmp
Dim mPath As String, fn As String, brr(1 To 60000), fTxt As String, j As Long, k As Integer
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "---------------------------------选择txt文件所在的文件夹--------------------------"
.AllowMultiSelect = False
.Show
If .SelectedItems.Count = 0 Then MsgBox "你放弃了操作!": Exit Sub
mPath = .SelectedItems(1)
End With
fn = Dir(mPath & "\*.txt")
jL = 0
'收集完整文件名
Do While fn <> ""
fTxt = mPath & "\" & fn
jL = jL + 1
brr(jL) = fTxt
fn = Dir
Loop
For i = 1 To jL
j = 0
Open brr(i) For Input As #1
Do While Not EOF(1)
j = j + 1
Line Input #1, tmp
If j = 2 Then arr(i, 1) = Split(tmp, " ")(0)
If j = 102 Then
crr = Split(Replace(tmp, " ", ""), ";")
For k = 0 To 4
arr(i, k + 2) = crr(k)
Next k
Exit Do
End If
Loop
Close #1
Next i
[a1].Resize(i, 6) = arr
MsgBox "收集完成!"
End Sub

网友(2):

TXT文档的数据格式都一样的吧?

把样本发我邮箱看。

Crazy0qwer@qq.com