作者antemw (我会很有礼貌)
看板Visual_Basic
标题[VBA ] 请问怎麽累计
时间Mon Nov 10 18:33:47 2014
请帮我看看程式码
如果我有违反版规,请帮我删除
以下是两个程序的程式码
主要目的是要搜寻相同资料夹中的txt档
搜寻出 C 24 後面的字串 同时输出档名
C 24 後面的字串Print在 Cell(1,A)
档名Print在 Cell(1,B)
接着读取第二个txt档
C 24 後面的字串Print在 Cell(2,A)
档名Print在 Cell(2,B)
不知道为什麽
他会一直Print在 Cell(1,A) 跟 Cell(1,B)
可能我一时迷失
搞了一天了 拜托各位 T_T
- - - - - - - - - - - - - - - - - - - - - - - - -
Sub ReadtxtFiles()
Dim lRow As Long
Dim FSO As Object
Dim FL As Object
Dim Fle As Object
rpath = ThisWorkbook.Path & "\"
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Fdr = FSO.GetFolder(rpath)
Set Fle = Fdr.Files
For Each FL In Fle
If UCase(FL.Name) Like "*.TXT" Then ProcessFile FL
Next
Set FSO = Nothing
lRow = 0
End Sub
Sub ProcessFile(FL)
Dim Fot As Object
Dim FRL As String
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Fot = FSO.OpenTextFile(FL, 1, False)
Do Until Fot.AtEndOfStream
FRL = Fot.ReadLine
If FRL Like "C 24 *" Then
lRow = lRow + 1
Cells(lRow, "A") = FRL
Cells(lRow, "B") = Dir(FL)
End If
Loop
Fot.Close
Set Fot = Nothing
End Sub
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
--
http://www.wretch.cc/user/antemw 关键字:男的 XD
鱼说:你看不见我的泪水 因为我在水中....
水说:我能感觉到你的泪 只因你在我的心中...
鱼需要水才能生存
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 59.120.184.37
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Visual_Basic/M.1415615632.A.5C2.html
※ antemw:转录至看板 Office 11/11 10:37
1F:推 Yaiba: 我看过了 因为你子程式没有用全域变数 12/28 01:50
2F:→ Yaiba: lRow没宣告 故初始值一直都是0 然後都会被加1 12/28 01:51
3F:→ Yaiba: 所以每个档案都是以第一行为起点 12/28 01:51
4F:推 Yaiba: 每个Sub 的变数是不可以共用的 12/28 01:54
5F:→ Yaiba: 故你宣告在ReadtxtFiles 但ProcessFile用的是自己的 12/28 01:54
6F:→ Yaiba: 要宣告在Sub外面 12/28 01:55