這裏是場景:快速計算以獲得不同級別的數字倍數
我們有幾個物品運到很多商店。我們希望能夠根據需要爲商店分配一定數量的每件商品。這些商店中的每一個也都與特定倉庫相關聯。
問題是,在倉庫級別,每個項目的總數量必須是一個數字的倍數(例如6)。
我在店水平已經計算出各店所需要的數量,但他們沒有在倉庫水平總結到6的倍數。
我的解決辦法是這樣的使用Excel:
使用SUMIFS公式來跟蹤在倉庫級分配每個項目的總和。然後,另一個MOD(6)公式計算剩餘的直到6的倍數。然後,我的實際VBA代碼循環並從商店減去1(如果MOD < = 3)或增加(如果MOD> 3)直到所有行的MOD = 0。
現在這對我很有用,但即使當我只有5000行時,它也非常慢。
我正在尋找更快的解決方案,因爲每次我減去/添加到需要的單位時,需要再次計算SUMIFS和MOD。
編輯:(試圖更清晰)
我有我的數據粘貼到具有以下設置的模板文件:
+------+-------+-----------+----------+--------------+--------+
| Item | Store | Warehouse | StoreQty | WarehouseQty | Mod(6) |
+------+-------+-----------+----------+--------------+--------+
| 1 | 1 | 1 | 2 | 8 | 2 |
| 1 | 2 | 1 | 3 | 8 | 2 |
| 1 | 3 | 1 | 1 | 8 | 2 |
| 1 | 4 | 1 | 2 | 8 | 2 |
| 2 | 1 | 2 | 1 | 4 | 2 |
| 2 | 2 | 2 | 3 | 4 | 2 |
+------+-------+-----------+----------+--------------+--------+
目前WarehouseQty列是SUMIFS公式總結爲與倉庫關聯的每個Item-Store組合添加StoreQty。所以我猜每次Item-Store組合顯示時,Warehouse/WarehouseQty列實際上都會重複多次。該WarehouseQty是需要爲6
林現在要嘗試。雖然我也在更新Application.Status來告訴我所在的行,這是否會對速度產生顯着影響? – yeenow123 2013-03-20 20:01:21