返回列表 上一主題 發帖

請問各位老師,要如何對應以下的數量

回復 1# wsx1130

205 +344+736 = 1285
270 +270 +540 =1080
B11 是不是要改為 3
如果不是邏輯為何?
請確認,謝謝

1.JPG (43.65 KB)

1.JPG

TOP

本帖最後由 samwang 於 2022-1-3 07:57 編輯

回復 3# wsx1130

答案有問題吧?  條件可否在寫詳細,感謝

1.JPG (54.05 KB)

1.JPG

TOP

回復 3# wsx1130

3240 / 270 = 12
請再確認,謝謝

1.JPG (79.67 KB)

1.JPG

TOP

回復 3# wsx1130

819 /270 = 3箱(810),沒裝箱有9個,
261 / 270 = 1箱,可以在裝上9個前一箱

279 / 270 = 2箱(540),應該 1箱吧? 在將沒裝箱有9個,裝到下一箱

好多問題,條件不是很明確,請再確認,謝謝

1.JPG (56.95 KB)

1.JPG

TOP

回復 3# wsx1130

條件只要有多餘數量就加1箱,範例說明如下,請測試看看,謝謝
819-->4箱,1080-819,還有261個空間
261 -261 =0箱,261個補前一箱   

Sub test()
Dim Arr, T%, T1%, Et, i&
T = 270
Arr = Range("a1:b" & [a65536].End(3).Row)
For i = 3 To UBound(Arr)
    If Arr(i, 1) = "" Then GoTo 99
    If Arr(i, 1) >= 1080 Then
        Cells(i, 4) = Application.Round((Arr(i, 1) / T), 0): GoTo 99
    Else
        For i2 = i To UBound(Arr)
            If T1 >= 1080 Then Exit For
            If Arr(i2, 1) <> "" Then T1 = T1 + Arr(i2, 1)
        Next
    End If
    For i3 = i To i2 - 1
        If Arr(i3, 1) = "" Then GoTo 98
        Arr(i3, 1) = Arr(i3, 1) - Et
        Cells(i3, 4) = Application.RoundUp((Arr(i3, 1) / T), 0)
        Et = T * Cells(i3, 4) - Arr(i3, 1)
98: Next
    i = i2 - 1: T1 = 0: Et = 0
99: Next
End Sub

TOP

        靜思自在 : 【為善競爭】人生要為善競爭,分秒必爭。
返回列表 上一主題