作者windknife18 (windknife18)
看板Visual_Basic
标题Re: [VBA ] 如何读取TXT最後N行
时间Thu Dec 8 16:23:44 2011
如果档案不大, 可以用阵列的方法, 以下是读最後第3行
的范例, 自己改一下应该很好用罗
Open "D:\TESTFILE.txt" For Input As #1
fileinfo = Input(LOF(1), #1)
Close #1
myArray = Split(fileinfo, vbCrLf)
theCount = UBound(myArray) + 1
N = 3
If theCount - N > 0 Then
Cells(1, 1).Value = myArray(theCount - N)
End If
※ 引述《xg (smile)》之铭言:
: 透过以下的code我可以读到TXT档最後一行
: 那如果要改成读最後第N行,怎麽改比较好呢?
: 底子不好,越改越错,上来请教一下各位,拜托了><
: 谢谢!!
: --------------------------------------------------------------------------
: Dim MaxSize, NextChar, MyChar
: Dim Str
: Open "D:\TESTFILE.txt" For Input As #1
: NextChar = LOF(1) '取得档案长度
: Seek #1, NextChar '设定读取位置在档案尾端
: MyChar = Input(1, #1) '读取档未最後一个字
:
: While MyChar = Chr$(10) Or MyChar = Chr$(13) '从末端开始往前读取文字,忽略
: 文字档的跳行字元 CR & LF
: Seek #1, NextChar
: MyChar = Input(1, #1)
: NextChar = NextChar - 1
: Wend
:
: Str = MyChar
: While MyChar <> Chr$(10) And MyChar <> Chr$(13) '依次读出最後一个非空行文
: 字的字元并组合还原该文字
: Seek #1, NextChar
: MyChar = Input(1, #1)
: Str = MyChar + Str
: NextChar = NextChar - 1
: Wend
: Close #1
: Cells(1, 1) = Str
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.116.146.144