|
Option Explicit
Sub test()
Dim sht, i, j, t, p
sht = Split("银行POS 手工数据")
ReDim dic(UBound(sht)), arr(UBound(sht))
For i = 0 To UBound(dic)
Set dic(i) = CreateObject("scripting.dictionary")
arr(i) = Sheets(sht(i)).[a1].CurrentRegion
If i = 0 Then p = 7 Else p = 2
For j = 2 To UBound(arr(i), 1)
dic(i)(arr(i)(j, 1) & "|" & arr(i)(j, p)) = 1
Next
Next
For i = 0 To UBound(dic)
If i = 0 Then p = 7 Else p = 2
For j = 2 To UBound(arr(i), 1)
t = arr(i)(j, 1) & "|" & arr(i)(j, p)
If dic(1 - i).exists(t) Then
If i = 0 Then
arr(i)(j, UBound(arr(i), 2)) = "√"
Else
If dic(1 - i)(t) = 1 Then
dic(1 - i)(t) = 0
arr(i)(j, UBound(arr(i), 2)) = "√"
Else
arr(i)(j, UBound(arr(i), 2)) = "×"
End If
End If
Else
arr(i)(j, UBound(arr(i), 2)) = "×"
End If
Next
Sheets(sht(i)).[a1].Offset(, UBound(arr(i), 2) + 1).Resize(UBound(arr(i), 1), UBound(arr(i), 2)) = arr(i) '对比用,修改输出位置
Next
End Sub |
评分
-
2
查看全部评分
-
|