Board logo

標題: [發問] 根據不同組合狀態挑選相加項目 [打印本頁]

作者: jesscc    時間: 2019-12-30 20:33     標題: 根據不同組合狀態挑選相加項目

附檔裡有三組控管表格,每個 Item 的狀態最多有四種組合,依不同的狀態組合,去挑選出相加的項目,在附檔裡有詳細說明,煩請各位幫忙。
[attach]31608[/attach]
作者: jesscc    時間: 2019-12-30 22:53

雖然不知道自己能不能幫到你 ...但我看不懂問題....
adrian_9832 發表於 2019-12-30 21:19


是有些複雜,我再附個圖好了
[attach]31609[/attach]
右邊紅色框線中就是要傳回B表格的 "Supply Type項目" 的數字(紅色),傳回B表格後,然後同一列的數字在C欄(Amount)加總。B表格是最終我要的結果,已經用公式和人工方式填好了。
作者: 准提部林    時間: 2019-12-31 17:07

程式不太好寫, 有些複雜, 自行慢慢看,
若不懂字典檔, 可能較難理解~~

[attach]31610[/attach]
作者: jesscc    時間: 2019-12-31 18:40

准大又讓我開了一次眼,實在太厲害了,不但完全符合需求,而且還幫我把 Item 項目都傳回B表格了(這個部份我本想自行處理的)。
雖然我會運用簡單的字典,只不過這程式太難了,完全看不懂,准大能提示您大致的設計邏輯思考嗎?
作者: 准提部林    時間: 2020-1-1 10:57

回復 5# jesscc

重點在A表:
1) 先將四個關鍵字納入字典, 並賦于序號值
        xD("Intransit shipment") = 1
     xD("PO New Requirement Date") = 2
     xD("PO existing due date") = 3
     xD("Planned order") = 4
2) 將八個組合, 各組成一個[識別碼]納入字典, 並將"紅色V"的位置放到字典的ITEMS中,
   識別碼"原碼"設為:Sn = 90000, (第一個9是要維持識別碼為5位數)
   當第一個為"V", 則Mid(Sn, C + 1, 1) = C >> 識別碼變成:91000
   當第二個為"V", 則Mid(Sn, C + 1, 1) = C >> 識別碼變成:91200...類推
     參考:B7 = 91234_14, 其在字典中為: xD(91234) = 14, B8:B14同理
3) 有了上面的識別碼, 及其字典ITEMS,
    到C表時, 逐一取得各"編號"所屬"關鍵字", 轉換為識別碼, 即可取出"紅色V"所對應的數值

============================================
作者: jesscc    時間: 2020-1-1 11:30

回復 6# 准提部林
謝謝准大的指導,我來好好的研究一下。




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