例如:行數值55是在46-65之間,列的數值為7,行列交叉的數值得到的結果為15。
單元格B13=INDEX(B2:E8,MATCH(B12,$A$2:$A$8,1),MATCH(B11,{0,21,46,66},1))
(1) MATCH(B12,$A$2:$A$8,1)
因為列的內容是以單一數值表示,列的數字必須為數值,並不是文本,直接選取範圍,比對後得到一個位置,傳回一個數值。
(2) MATCH(H1,{0,21,46,66},1)
同第(1)式,在 MATCH 函數中用數組常數,取每個範圍的第一個數值當為數組項目,再以參數『1』取「小於」(或是參數『-1』取「大於」)。比對後得到一個位置,傳回一個數值。
(3) INDEX(B2:D5,第(1)式,第(2)式)
在 INDEX 函數中以第(1)式和第(2)式的內容代入,以欄列交叉的位置傳回對應的數值,如調換位置會發生錯誤。
(4)IFERROR(),0)表示#N/A錯誤值則返回為0,如不想顯示0數值,自定義單元格式:[=0]"";#,##0.00即可。
例如:行數值55是在46-65之間,列數值7在6-8之間,欄列交叉對應得到11。
單元格B10:=IFERROR(INDEX(B2:E5,MATCH(B9,{1,3,6,9},1),MATCH(B8,{0,21,46,66},1)),0)
(1) MATCH(H2,{1,3,6,9},1)
因為列的內容是以區間表示,所以我們在 MATCH 函數中用常數數組,取每個範圍的第一個數值當為數組項目,再以參數『1』取「小於」(或是參數『-1』取「大於」)。比對後得到一個位置,傳回一個數值。
(2) MATCH(H1,{0,21,46,66},1)
同第(1)式,在 MATCH 函數中用數組常數,取每個範圍的第一個數值當為數組項目,再以參數『1』取「小於」(或是參數『-1』取「大於」)。比對後得到一個位置,傳回一個數值。
(3) INDEX(B2:D5,第(1)式,第(2)式)
在 INDEX 函數中以第(1)式和第(2)式的內容代入,以欄列交叉的位置傳回對應的數值,如調換位置會發生錯誤。
(4)IFERROR(),0)表示#N/A錯誤值則返回為0,如不想顯示0數值,自定義單元格式:[=0]"";#,##0.00即可。
閱讀更多 開心學電腦 的文章