到货单中的到货量来满足"分配单"中各客户的需求量,不能足的有多少满多少,并显示在本次分配量中.
代码简化一点 - Sub 分配()
- arr = Sheet2.[a1].CurrentRegion
- Set d = CreateObject("scripting.dictionary")
- For i = 2 To UBound(arr)
- d(arr(i, 1)) = arr(i, 2)
- Next
-
- brr = [a1].CurrentRegion
- For i = 2 To UBound(brr)
- x = brr(i, 1): xq = brr(i, 3)
- brr(i, 4) = Application.Min(d(x), brr(i, 3)) '本次分配,按到货量和需求量中的小值
- d(x) = d(x) - brr(i, 4) '分配后,到货量减之
- brr(i, 5) = brr(i, 3) - brr(i, 4)
- Next
- [a1].CurrentRegion = brr
- End Sub
复制代码
|