EXCEL中MATCH()、INDEX()的用法

  一、比如:有一列數據:A1:A7 分別時 A B C D E F G ,C1的值為F

這個時候D1輸入=match(b1,a1:a7,0) 返回值就是6(“F”在A1:A7中的行號)

這是基本的原理

經常和INDEX()函數一起使用!

比如:和上表一樣, B1:B7為10 20 30 40 50 60 70

=index(B1:B7,MATCH(C1,A1:A7,0),0)就能返回「F」對應的B列的值60

INDEX可以做到反向查找 ,比VLOOKUP用法更加靈活

二、index,match 是分別用來引用,定位的函數,一個是針對單元格,簡單點說index表述為在某一區域的第幾行第幾列的哪個數,是用來引用某個數的,match 表述為某個數在某一區域行或列中的第幾個數相等,是用來定位某個數在行或列中順序的.

=INDEX(I$3:I$12,MATCH(1,(C3>=G$3:G$12)*(C3<=H$3:H$12),0))可以分解為:第一層:,=INDEX(I$3:I$12,?)”第二層:=MATCH(1,?,0),第三層:=(C3>=G$3:G$12)*(C3<=H$3:H$12).

這是個數組函數,這樣這個函數就很清楚了.(C3>=G$3:G$12)*(C3<=H$3:H$12)也就是說必須符合G3<=H3,且G3>=C3、G4<=C3,且H4>=C3,如此類推,返回正確值true 否則是錯誤值false,(true*true=1,其他為0,因為”1″本義上就是正確值) ,向下拖動時則是C4,C5,C6…的判斷.