我想读在VBA大文件,并且看到这个代码在线:如何读取一个文本文件中的倒数第二行
Dim MyChar As String, Pointer As Long, LastLine As String
Open "MyTextFile.Txt" For Binary As #1
Pointer = LOF(1) - 2
MyChar = Chr$(32)
Do
Get #1, Pointer, MyChar
If MyChar = vbCr Or MyChar = vbLf Then
Exit Do
Else: Pointer = Pointer - 1
LastLine = MyChar & LastLine
End If
Loop
MsgBox "Last Line is " & LastLine
如何改变这种代码来获取倒数第二行?需要一些帮助。
想到这里:
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile _
"MyTextFile.Txt", 1)
objTextFile.ReadAll
MsgBox objTextFile.Line
但我不能站上罚球线,2。
我更喜欢第二种方法。如何使用ADO获取文件?可以进一步解释? – lakesh
刚刚更新了我的答案,解释为什么ADO不值得深入研究。但是,如果你仍然想要沿着这条路线,那么简单地从以下任何一个复制:http://stackoverflow.com/questions/16898046/copying-text-from-txt-file-in-excel-using-ado-ignores-第一行http://stackoverflow.com/questions/22947425/using-ado-to-query-text-files-terrible-performance步骤是一样的:(1)'从SELECT * MyTextFile.txt'然后保存总是两个字符串并循环到'recordset'的末尾。一旦你在最后你可以输出最后两行。 – Ralph