2020年2月5日 星期三
Excel 表格的合併且排序
這是本 Blog 上第一篇關於 Excel 的文章,因為這個實作當下我在網路上沒找到範例,又得到網友協助、啟發,就把自己解決這個題目過程分享出來。
題目:兩個動態表格資料,要以日期為排序,合併成一個新的表格。來源表格如圖。
思路:先把兩個表格資料合併成縱向、資料連續的暫存表格,再把暫存表格內容做以日期為排序。
Step 1. 先判斷左表的日期是否存在,存在就直接引入,不存在就引入右表的日期。第一步合併表格就是先把左表有資料的都拉進來,沒資料就開始拉進右表的資料,而開始拉右表資料時得從第一個開始,所以用 Index 來引入右表的資料。
Step 2. 引入右表資料的儲存格不能直接對應 D2,所以建立一欄讓暫存表格在引入右表資料時,知道 Index 要取第幾個的資料。往下拖拉後就得到日期欄的資料合併。金額欄同法炮製。
Step 3. 接著把合併資料的表格(欄 I、J)做排序。因為要排序,先用 RANK.EQ 做日期的遞增排序值備用,後續將用 MATCH 查找該指向那一格,以 INDEX 引入,得到排序後的表格。
Step 4. 用 Match 對存放 RANK值的 欄K 查找出,後續 Index 依序引入資料時在資料列的第幾行。
Step 5. 用 Index 以 Match 查找到該指向的第幾行來引入已經合併的資料。並對金額欄如法操作,往下拖拉。
然後,我們就能得到把兩個表格資料合併再排序後的新表格。
本範例的下載點:點我下載
推薦 Excel 教學影片:https://youtu.be/wg3R5LdQ56k
熱門文章
-
在 MultiCharts 或是 TradeStation 中都有 Set開頭的一些指令可以運用,比如 停損─SetStopLoss、停利─SetProfitTarget,這些都是所謂的 ThisBar 模式運作的特殊指令,它們讓你在條件成立的當根K棒就可以做出對應動作,而不是一...
-
在 MultiCharts 裡,本來我以為 EntryPrice(0) 就代表了最後一個進場的成本價,經過測試後,確定了 EntryPrice( 0 ) 不是最後一次進場價,而是最後進場方向的第一筆價格(可查閱"程式交易語法大全 page 255")。什麼意思...
-
去年開發「 把策略訊號轉換成選擇權去執行 」的時候,一直有個實務上的困擾:標的物價格。 我要把訊號轉成選擇權的時候,事前不能精準的知道要交易哪一個履約價、Put 或 Call,需要在訊號或市況變化的當下才決定交易標的。但在 MultiCharts 的運作架構上,需要開啟欲取...
-
殷鑑不遠。這是 2019/07/03 的台指期貨,在大約 10來秒的時間之中,台指閃崩了近 500點,並且快速回復。這樣類似的事件,在台指不是空前,也不會絕後,即使台灣期貨交易所有所謂的動態穩定機制在運作,這一天,據我所聽聞到也有不少友人在這很短的時間內... 中槍了。這裡,我們...