Sub Test()
Dim i, j, k, arr, brr, x, y
arr = Sheet1.UsedRange '盘点表数据装入数组arr
brr = Sheet2.UsedRange '系统库存数据装入数组brr
ReDim crr(1 To UBound(arr), 1 To UBound(arr, 2)) '定义结果数组
For i = 2 To UBound(arr)
For j = 2 To UBound(brr)
If arr(i, 1) & arr(i, 2) = brr(j, 1) & brr(j, 2) Then
k = k + 1
crr(k, 1) = arr(i, 1)
crr(k, 2) = arr(i, 2)
crr(k, 3) = arr(i, 3) - brr(j, 3)
crr(k, 4) = arr(i, 4) - brr(j, 4)
crr(k, 5) = arr(i, 5) - brr(j, 5)
crr(k, 6) = arr(i, 6) - brr(j, 6)
crr(k, 7) = arr(i, 7) - brr(j, 7)
crr(k, 8) = arr(i, 8) - brr(j, 8)
crr(k, 9) = arr(i, 9) - brr(j, 9)
crr(k, 10) = arr(i, 10) - brr(j, 10)
Exit For
End If
Next
Next
[2:10000] = ""
Sheet3.[a2].Resize(k, 10) = crr
End Sub |