回覆列表
  • 1 # 69512317

    1/7

    如下圖是某學校某次競賽成績表,現在想要將所有一年級2班的學生名單及成績提取出來。

    2/7

    在F2單元格輸入公式=INDEX(C:C,SMALL(IF(($A$2:$A$36=$F$1)*($B$2:$B$36=$G$1),ROW($2:$36),4^8),ROW(A1)))&""然後按下Ctrl+shift+enter三鍵結束,最後下拉填充直至出現空白單元格為止。

    3/7

    在G2單元格輸入公式=INDEX(D:D,SMALL(IF(($A$2:$A$36=$F$1)*($B$2:$B$36=$G$1),ROW($2:$36),4^8),ROW(B1)))&""同樣按下Ctrl+shift+enter三鍵結束,最後下拉填充直至出現空白單元格為止。這樣就把1年級1班的學生名單及成績全部提取出來了。

    4/7

    首先是if函式,它是Excel中常用的條件函式,根據指定的條件來判其“真”(TRUE)、“假”(FALSE),根據邏輯計算的真假值,從而返回相應的內容。可以使用函式 IF 對數值和公式進行條件檢測

    5/7

    IF(($A$2:$A$36=$F$1)*($B$2:$B$36=$G$1),ROW($2:$36),4^8)在本文中的意思就是當年級為1年級且班級為2班時,返回其對應的行號,否則返回4^8的結果65536。最後得到一個有大量數字組成的記憶體資料組,為了方便大家理解我將這組資料放到E列中,如下圖

    6/7

    接著是SMALL函式和row函式,small函式作用是返回資料第K個最小值,row函式則是返回引數的行號。SMALL(IF(($A$2:$A$36=$F$1)*($B$2:$B$36=$G$1),ROW($2:$36),4^8),ROW(A1))則是依次返回上一步所說的記憶體資料組的第1,第2,第3……個最小值。在單元格中輸入=SMALL($E$2:$E$36,ROW(A1))其返回結果如下圖。

    7/7

    然後是INDEX函式,它是返回表或區域中的值或值的引用。它的語法結構是INDEX(單元格區域,行號,列號),因此他在本文中的作用就是返回small函式提供的行號所對應的姓名或者成績。在單元格中輸入公式=INDEX(C:C,F2),其返回結果如下圖。

  • 中秋節和大豐收的關聯?
  • 如何評價《歸去來》中唐嫣的演技?