如何把每日明細資料累計後按分類儲存
例題描述
現有每日商品進貨登記表—每日入庫明細.xlsx,如下圖所示:
另還有每日商品發貨登記表—每日發貨明細.xlsx,包括所有商品,只有第一條有日期,其餘條日期相同,如下圖所示:
現需要按商品款式將每日入庫及發貨數量儲存到“出入庫彙總.xlsx”檔案的對應sheet(商品款式就是sheet名)中,並計算出當日結存,如下圖所示:
實現步驟
1、 執行集算器
可去潤乾官網下載職場版,同時下載一個免費授權就夠了,首次執行時會提示載入。
2、 編寫指令碼:
把程式碼列出來看得清楚點:
A1 定義dir變數指定Excel資料檔案所在的目錄
A2 定義出入庫彙總.xlsx檔案
B2 開啟並讀入出入庫彙總資料,形成集算器中的Excel物件
A3 讀入每日發貨明細.xlsx中的資料
B3 選出每日發貨明細中規格及品名不為空的記錄
A4 將每日發貨明細中每條記錄的日期設定成第1條記錄的日期
B4 在每日發貨明細中新增一列:入庫數量
A5 讀入每日入庫明細.xlsx中的資料
B5 選出每日入庫明細中日期不為空的記錄
A6 對B5選出的入庫明細記錄進行迴圈處理
B6 在B4算出的發貨明細中選出與當前迴圈相同產品的記錄,並將當前的入庫存數量設定成它的入庫數量
A7 從B4中選出入庫數量或發貨數量至少有一個不為空的記錄
A8 對A7中的所有記錄進行迴圈處理
B8 從出入庫彙總Excel物件中讀出當前迴圈商品對應的歷史出入庫記錄,從第3行開始,選項@t表示首行是列名
B9 計算當前迴圈商品的結存=歷史記錄最後一條的結存+入庫數量-發貨數量
B10 把當前迴圈商品的當日出入庫記錄插入到歷史記錄的最後
B11 把當前迴圈商品的最後1條記錄(即當日的)追加到出入庫彙總Excel物件的對應sheet中,使用選項@a表示追加寫入
A12 將處理完畢的Excel物件再儲存到出入庫彙總.xlsx檔案中
3、 按F9執行這段程式,開啟出入庫彙總.xlsx來看看。
4、 第6行還可以用JOIN運算實現,只要一句了
A6:=A4.join(規格及品名,B5:款式,入庫存數量)
把B4和B6清空,完整程式碼:
A6 按A4每日發貨明細中的規格及品名與B5每日入庫明細中的款式進行連線,拼接上入庫存數量欄位
相關文章
- 關於資料庫中客戶基本資料儲存資訊分類的設計說明 (轉)資料庫
- 儲存系統設計指南之儲存分類
- 資料儲存(1):從資料儲存看人類文明-資料儲存器發展歷程
- 《資料儲存》之《分庫,分表》
- 計算機儲存器的分類及其特性計算機
- 報表資料分庫儲存
- 常見儲存器分類
- 明解資料庫------資料庫儲存演變史資料庫
- 資料儲存--面向列的儲存設計
- 單細胞資料 儲存方式彙總
- Web3證明資料的儲存方式Web
- 分庫解決方案—資料儲存
- 資料成本:雲端儲存成本高嗎如何節省資料儲存成本
- 實現報表資料分庫儲存
- laravelS使用redis stream完成每日億級別資料儲存LaravelRedis
- 移動端長按儲存、取消長按儲存圖片
- SAP Sybase IQ按列儲存介紹 - 1 按列儲存
- 儲存器的分類及其特點
- Android資料儲存之SharedPreferences及如何安全儲存Android
- 容器化RDS—— 計算儲存分離 or 本地儲存
- BDC錄屏該程式後 最後按儲存按鈕卻無法執行
- 資料儲存--檔案儲存
- MongoDB後設資料的儲存介紹MongoDB
- 資料倉儲-按周的累加和統計月資料
- index desc之後資料在leaf node中是如何儲存的!Index
- 資料倉儲技術分類術語
- 服務端指南 資料儲存篇 | MySQL(08) 分庫與分表設計服務端MySql
- 資料儲存
- 暫存的資料統計方法說明
- 儲存卡變為RAW,如何進行儲存卡資料救援
- 以太坊和IPFS如何儲存資料
- 儲存刪除資料後恢復方法-適用netAPP儲存APP
- 分散式儲存中的資料分佈策略分散式
- 儲存資料的時候,decimal總是把我的小數如2.47儲存成3Decimal
- aix 下 oracle 11.2 rac 把資料遷移到新儲存AIOracle
- 在大資料世界“尋寶”,科研新正規化如何用好儲存這把利器?大資料
- 資料庫設計:儲存過程資料庫儲存過程
- 結構化資料儲存,如何設計才能滿足需求?