EXCEL 指數擷取
2009 |
EXCEL 指數擷取 |
||||
示範檔 |
無 |
範例檔 |
2009.XLSX |
結果檔 |
2009F.XLSX |
佳燕:「錦子老師,我想做的是分析歷史走勢的工具。
假設我已知2020/1/1 5000點時買進 我想要做一個函數,在之後的指數中尋找第一個超過5500點的值 並且回傳當天的日期 結果像是「您的股票於2020/01/11以5500點賣出」 請問這樣該怎麼寫呢?」
錦子老師:「佳燕,這處理方式很簡單。」
首先點取B2儲存格,再點取「常用 > 排序與篩選 > 從最大到最小輸排序」指令。
點取E1儲存格輸入公式「=INDEX(B2:B16,MATCH(5500,B2:B16,-1),0)」後,按Enter鍵完成輸入,傳回最接近5500的值。
點取D1儲存格輸入公式「=TEXT(INDEX(A2:A16,MATCH(5500,B2:B16,-1),0),"YYYY/MM/DD")」後,按Enter鍵完成輸入,傳回最接近5500的值所在日期。
點取D2儲存格輸入公式「="您的股票於"&D1&"以"&E1&"點賣出"」後,按Enter鍵完成輸入。
【公式說明】
1 MATCH(5500,B2:B16,-1) 傳回5500這個值在B2:B16儲存格範圍中的第幾列,-1表示這個範圍必須由大到小排序,才可傳回最接近的最小值。
2 INDEX(A2:A16,MATCH(5500,B2:B16,-1),0) 傳回A2:A16儲存格中由1計算出來的值所在列。
3 TEXT(INDEX(A2:A16,MATCH(5500,B2:B16,-1),0),"YYYY/MM/DD") 將傳回的數值利用TEXT函數將其轉成西元格式。