馬震安
在作品登記表中,對于有學員多次提交作品記錄的情況,如何按學員姓名提取其作品與成績表以供學員核對?本文提供兩種解決辦法。
案例與分析:
在如圖1左側的學生作品登記表中存放了學生在不同日期上交電子作品的記錄,許多學生都上交過多次作品。到了學期末,需要將源數據表中的數據按姓名單獨提取到另外一個表中進行打印,以供學生核對(如圖1中間)。遇到這樣的問題,我們一般會想到用自動篩選。但自動篩選出的數據要想在另外的表中按統一格式打印,還得一個個復制,太麻煩。此外還會想到用VLOOKUP函數,但由于源數據表中按姓名提取的話會有多條重復記錄,而VLOOKUP函數只能查找第一個符合條件的值,這顯然不行。其實,有另外兩種方法可以實現,一個是用輔助列法,一個是用公式嵌套法。
在源數據表的最右側插入一個輔助列,即本例中的E列,在E3單元格輸入函數“=COUNTIF ($A$2:A3,Sheet2!$G$1)”,并向下填充到所有記錄(圖2)。
接著,在提取顯示表Sheet2中A3單元格輸入公式“=IFERROR(INDEX(Sheet1!A:A,MATCH(ROW(Sheet1!1:1),Sheet1!$E:$E,)),"")”,向右向下拖動填充到相應單元格,這時就可以根據G1單元格中輸入或選擇的值進行數據的篩選提取了(圖3)。
當然,如果不用輔助列,而用一個嵌套的公式,也能夠提取相關數據。
在A3單元格輸入:=IFERROR(INDEX(Sheet1!A:A,SMALL(IF(Sheet1!$A$2:$A$30=$G$1,ROW(Sheet1!$A$2:Sheet1!$A$30)),ROW(Sheet1!1:1))),""),同時按下Ctrl+Shift+Enter組合鍵,向右向下拖動填充即可。