2019-12-18

〔EXCEL〕MATCH/INDEX-依比對的位置傳回指定欄位值--h015

【依比對的位置傳回指定欄位值】

又是一個繞口的標題…
這是上一次介紹MATCH的用法後
另一個進階應用

MATCH可以傳回比對到值在指定範圍內的位置
例如:在A10:A19(共10個欄位),在A15找到,則傳回6(因為是第6個欄位找到)
請參閱 〔EXCEL〕MATCH-取得某值在表格中的順位--h014

我們可以再組合INDEX這個函數,可以取得該欄位內的值~
先找到位置,再依其位置把值取回來

=INDEX( 範圍 , 第幾列 , [第幾欄,預設為0] )
=INDEX( A10:A19 , 6 ) ←回傳A15的值
=INDEX( A10:A19 , MATCH("章老師", A10:A19 , 0) )
這個例子,我們在A10:A19間找尋"章老師"…結果在A15找到
例用MATCH回傳的6,用INDEX的方式,在A10:A19間,取第6列,同一欄的資料。回傳的值就是「章老師」

好了,雖然我一直很想簡單講幾句就把它講完~但有時也很困難~

以下給各位一個我實務上的應用做參考

在CE19,我想抓C22~C25(也就是Q1~Q4目前累計的EPS)
因為EPS數據是自動帶進來的…不確定目前已取得第幾季的數據,且筆數很多,不可能每次自己去改取資料的位置。
但可以確認的是還沒有入的數據,資料內容為"-"

因此我可以這麼做
1.先用MATCH("-",CE22:CE25,0),傳回第一筆找到的-,回傳值為4
2.再用INDEX(CE22:CE25,MATCH("-",CE22:CE25,0)-1),取回前一列的值(記得-1),回傳值為1.92
這樣的組合就可以讓數據的變化是依來源資料自動更新了唷~

實務上有這樣的取值需求時,就再過來研究一下囉!


相關課程:
〔EXCEL〕MATCH-取得某值在表格中的順位--h014

章老師的電腦小講堂 https://www.facebook.com/ScenicSchool/
※※ 本區做為經常使用之程式碼複製區,提問請至小講堂唷 ※※

5 章老師的電腦小講堂: 〔EXCEL〕MATCH/INDEX-依比對的位置傳回指定欄位值--h015 【依比對的位置傳回指定欄位值】 又是一個繞口的標題… 這是上一次介紹MATCH的用法後 另一個進階應用 MATCH可以傳回比對到值在指定範圍內的位置 例如:在A10:A19(共10個欄位),在A15找到,則傳回6(因為是第6個欄位找到) 請參閱  〔EXCEL〕M...
小講堂經過多次搬移,舊文章連結及內容較難整理~
大家可以新文章為主~
每篇文章後有代碼,任何文章問題可至FB小講堂用代碼提問唷~