|
发表于 2013-9-9 09:48
|
显示全部楼层
本楼为最佳答案
- <div class="blockcode"><blockquote><div class="blockcode"><blockquote><div class="blockcode"><blockquote>Sub Test()
- Dim D As New Dictionary, F As New FileSystemObject
- Dim S$, Arr(1), i&, Fi As File, ArrTemp, K&, Ar() As String
- S = ThisWorkbook.Path
- Open S & "\新001.txt" For Input As #1
- Arr(0) = Split(StrConv(InputB(LOF(1), #1), vbUnicode), vbCrLf)
- Close #1
- Open S & "\原1.txt" For Input As #2
- Arr(1) = Split(StrConv(InputB(LOF(2), #2), vbUnicode), vbCrLf)
- Close #2
- For i = 0 To UBound(Arr(0))
- D.Add Arr(0)(i), Arr(1)(i)
- '若此行跳出错误,则表示新001中有重复记录
- Next i
- K = 2
- For Each Fi In F.GetFolder(S & "\test").Files
- K = K + 1
- Open Fi.Path For Input As #K
- ArrTemp = Split(StrConv(InputB(LOF(K), #K), vbUnicode), vbCrLf)
- Close #K
- ReDim Ar(0 To UBound(ArrTemp))
- For i = 0 To UBound(ArrTemp)
- If D.Exists(ArrTemp(i)) Then
- Ar(i) = D(ArrTemp(i))
- End If
- Next i
- Open S & "\result\result" & K - 2 & ".txt" For Output As #K - 2
- Print #K - 2, Join(Ar, vbCrLf)
- Close #K - 2
- Next Fi
- End Sub
复制代码 试试 |
|