Board logo

標題: [發問] 如何彙整比對 [打印本頁]

作者: yifan2599    時間: 2017-9-26 22:34     標題: 如何彙整比對

想請問一下,附件檔案有3個sheet
想將 DATA_* 的sheet 數量依品項加總 和 D_ALL 品項加總,兩份數據進行比對。
列出異常的品項與數量..

求解..
作者: ikboy    時間: 2017-9-27 11:55

try this:
Sub zz()
Dim ar, d As Object, x$
Set d = CreateObject("scripting.dictionary")
For Each s In Sheets
    If InStr(1, s.Name, "Data_", 1) Then
        ar = s.[b1048576].End(3).CurrentRegion.Value
        For i = 2 To UBound(ar)
            d(ar(i, 1)) = d(ar(i, 1)) + ar(i, 2)
        Next
    End If
Next
ar = Sheets("D_ALL").UsedRange.Value
    For i = 2 To UBound(ar)
        t = d(ar(i, 1)) - ar(i, 2)
        If t Then
            d(ar(i, 1)) = t
        Else
            d.Remove (ar(i, 1))
        End If
    Next
    If d.Count Then
        k = d.keys: t = d.items
        For i = 0 To UBound(t)
            If t(i) > 0 Then
                k(i) = k(i) & " +" & t(i)
            Else
                k(i) = k(i) & " " & t(i)
            End If
        Next
    End If
    MsgBox Join(k, Chr(10))
End Sub
作者: Kubi    時間: 2017-9-27 21:23

回復 1# yifan2599
請參考。
[attach]27775[/attach]
作者: yifan2599    時間: 2017-9-28 11:34

謝啦! 我在測試看看~
回復 2# ikboy
作者: yifan2599    時間: 2017-9-28 11:34

感謝! 我在測試看看~

回復 3# Kubi




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)