|
本帖最后由 lijian8003 于 2014-12-6 19:14 编辑
Sub 运行()
For y = 1 To 2
t1 = Sheet1.Range("A1")
t2 = Sheet2.Range("A1")
arr = Sheet1.Range("B1:K100")
brr = Sheet2.Range("B1:K100")
crr = Sheet3.Range("B1:K100")
Open "D:\记录\" & y & ".txt" For Output As #1
For i = LBound(arr) To UBound(arr)
For p = LBound(arr, 2) To UBound(arr, 2)
If arr(i, p) = t1 And brr(i, p) = t2 Then
txt = txt & crr(i, p) & " "
n = n + 1
End If
Next
Next
Print #1, txt
Close #1
Next
End Sub
现在问题出现了:
若要让上述宏代码分别运行2次,设定 For y = 1 To 2
每次运行的结果分别写入1.txt 2.txt。该宏代码得到的2.txt结果却是:将1txt文本的内容合并到了2.txt
要让2次运行的结果,分别写入1.txt 2.txt,得到的结果不累加,宏代码如何修改?
- Sub 运行()
- For y = 1 To 2
- txt = ""
- t1 = Sheet1.Range("A1")
- t2 = Sheet2.Range("A1")
- arr = Sheet1.Range("B1:K100")
- brr = Sheet2.Range("B1:K100")
- crr = Sheet3.Range("B1:K100")
- Open "D:\记录" & y & ".txt" For Output As #1
- For i = LBound(arr) To UBound(arr)
- For p = LBound(arr, 2) To UBound(arr, 2)
- If arr(i, p) = t1 And brr(i, p) = t2 Then
- txt = txt & crr(i, p) & " "
- n = n + 1
- End If
- Next
- Next
- Print #1, txt
- Close #1
- Next
- End Sub
复制代码不知行不行。
|
|