|
这是之前自己在别人帮助下制作的简单仓库管理软件,设计的时候考虑不周,仅能自动统计入库的总额,现在需要增加出库、库存的总额,因为涉及到数组,请求大神帮忙{:091:}
- Private Sub CommandButton1_Click()
- Dim arr, brr, Crr
- Dim i&, j&, k&, iRow
- Dim d As Object
- Set d = CreateObject("scripting.dictionary")
- arr = Sheets("入库").[a1].CurrentRegion
- brr = Sheets("出库").[a1].CurrentRegion
- ReDim Crr(1 To UBound(arr) + UBound(brr), 1 To 11)
- For i = 2 To UBound(arr)
- gg = arr(i, 8) '类别材质规格
- If Not d.Exists(gg) Then
- n = n + 1
- d(gg) = n
- Crr(n, 1) = n
- Crr(n, 2) = gg
- End If
- p = d(gg)
- Crr(p, 3) = Crr(p, 3) + arr(i, 9)
- Crr(p, 4) = Crr(p, 4) + arr(i, 10)
- Crr(p, 5) = Crr(p, 5) + arr(i, 12)
-
- Crr(p, 9) = Crr(p, 9) + arr(i, 9) '库存(入库相加)
- Crr(p, 10) = Crr(p, 10) + arr(i, 10)
- Crr(p, 11) = Crr(p, 11) - arr(i, 12) '库存总额(入库相减)
- Next
-
- For i = 2 To UBound(brr)
- gg = brr(i, 9) '类别材质规格
- If Not d.Exists(gg) Then
- n = n + 1
- d(gg) = n
- Crr(n, 1) = n
- Crr(n, 2) = gg
- End If
- p = d(gg)
- Crr(p, 6) = Crr(p, 6) + brr(i, 10)
- Crr(p, 7) = Crr(p, 7) + brr(i, 11)
- Crr(p, 8) = Crr(p, 8) + brr(i, 13)
- Crr(p, 9) = Crr(p, 9) - brr(i, 10) '库存(出库相减)
- Crr(p, 10) = Crr(p, 10) - brr(i, 11)
- Crr(p, 11) = Crr(p, 11) + brr(i, 13) '库存总额(出库相加)
- Next
-
- For i = 1 To UBound(Crr) '如果库存为0,保留计算总额,否则总额为0
- If Crr(i, 10) > 0 Then Crr(i, 11) = 0
- Next
-
- With Sheets("统计")
- .Range("A3:K1500").ClearContents
- .Range("A3").Resize(n, 11) = Crr
- End With
- End Sub
复制代码
|
|