蔡小艷 高婕 孟憲宇 曾垂振
摘 要:針對學生對查找和引用函數學習、理解較難的狀況,筆者從學生證的制作這個任務出發,融合index和match函數及Excel的名稱定義,引導學生對任務進行分析、討論和操作實現,通過具體任務幫助學生理解所學函數參數的實際意義,激發學生學習興趣,提高教學效果。
關鍵詞:Excel;index函數;match函數
DOI:10.16640/j.cnki.37-1222/t.2018.18.105
Excel的函數眾多,根據來源的不同可以分為內置函數、擴展函數、自定義函數和宏表函數四類,熟練掌握函數能使日常辦公變得簡單有序。在日常生活中,我們經常會遇到根據指定條件查詢與之匹配的多條記錄的情況,例如,查詢學號對應的姓名、性別、籍貫、出生年月等文字信息,以及照片等圖片信息,Excel內置函數中的查找和引用函數可以便捷地解決這些問題。查找和引用函數可在數據清單或數據表中查找特定的數值,或者查找某一個單元格的引用[1]。Vlookup、index、match、offset等查找與引用函數在查找匹配數據等日常工作中應用十分普遍,常作為教學的重點函數。本文結合學生證的制作,詳細講解index和match兩個函數的使用方法和過程,引導學生自主學習、獨立思考,從而實現Excel中照片的動態調用。
1 任務分析
目前在Excel中有兩張表,一張表是學生信息表,包括了學生的學號、姓名、性別、籍貫、出生年月、入學年月、院系、專業、班級、培養層次等信息,如圖1所示,學生的文字信息放在A4至I11單元格中,照片信息放在K4至K11單元格中。另一張表是學生證模板,如圖2所示。學生證模板中文字信息的自動填充需要依據學號,在學生信息表中找到對應的文字信息并提取出來,這個功能可以使用Vlookup函數實現。
本任務需要解決的問題:在學生證模板中如何根據學號調用學生信息表中對應學生的照片,并在學生證模板中顯示出來。
Match函數可以用于查找數據的位置,而index函數可以根據查找到的位置返回為實際的單元格引用。因此,在本任務中可以將match和index函數兩者結合,先使用match函數找到學生證模板中指定學號在學生信息表中的行號,再使用index函數返回指定行和列所在單元格中的照片。
2 技術要點
2.1 Index函數
INDEX(array,row_num,column_num),返回表或區域中的值或值的引用[2],即根據用戶在一個范圍中指定的行號和列號來返回一個值。
Array:單元格區域或數組常量。本例中的單元格區域為學生信息表中照片所在的單元格區域,即學生信息表!$k$4:$k$11。
Row_num:數組中某行的行號,函數從該行返回數值。本例是根據學生證模板中的學號在學生信息表中確定對應照片所在的行號,在此需要引入match函數。
Column_num:數組中某列的列標,函數從該列返回數值。本例中照片單元格區域為10行1列,Column_num的取值為1。
注意:Row_num和column_num必須指向數組中的一個單元格;否則,函數 INDEX 返回錯誤值 #REF!。
2.2 Match函數
MATCH(lookup_value,lookup_array,match_type),返回在指定方式下與指定數值匹配的數組中元素的相應位置[3]。
Lookup_value:需要在數據表中查找的數值。本例中學生證模板中的學號為匹配目標,即C8是要引用的單元格。
Lookup_array:可能包含所要查找的數值的連續單元格區域,為數組或數組引用。本例中的查找區域為學生信息表!$A$4:$J$11。
Match_type:指明如何在lookup_array中查找lookup_value,為數字 -1、0 或 1。如果省略,則假設為1。本例學生信息表中學號已按升序排列,Match_type的值可以省略。
3 實現步驟
本任務中學生證模板調用學生信息表中照片采取的方法:先引用index函數定義照片名稱,然后在學生證模板中添加圖像控件,通過引用照片名稱來動態調用照片,使數據處理和分析更加快捷和高效。
3.1 定義名稱
在Excel中,名稱是一種特殊的公式,多數由用戶自行定義。普通公式保存在單元格中,名稱保存在工作簿中,并在程序運行時存在于Excel的內存中,并通過其唯一標識(即名稱的命名)進行調用。名稱可與圖形對象配合調用單元格中的圖片。
在Excel中選擇公式選項卡→定義名稱,彈出如圖3所示的新建名稱窗口。
名稱:名稱的第一個字符必須是字母、下劃線(_)、反斜杠(\)或漢字,不能使用單元格地址、阿拉伯數字,名稱的長度不能超過255個字符,名稱不能含有空格。本例在名稱中輸入“photo”。
范圍:指定該名稱的適用范圍,即名稱的級別,包括工作簿和工作表,本例范圍選擇“工作簿”。
引用位置:包括單元格引用、常量、公式或函數。本例在引用位置中輸入index函數:
=Index (學生信息表!$K$4:$K$11, match (學生證模板!$C$8,學生信息表!$A$4:$A$11),1)
說明:match (學生證模板!$C$8,學生信息表!$A$4:$A$11)返回學生證模板中學號單元格$C$8的值在學生信息表學號區域$A$4:$A$11的相應位置,match函數的值確定了調用照片所在的行,index函數返回學生信息表照片區域$K$4:$K$11中確定行和列的某一張照片。
如果需要為該名稱添加一些說明信息,還可以在“備注”文本框中輸入說明文字,便于后續了解該名稱的用途、使用方法等。
3.2 添加圖像控件調用照片
在學生證模板中的照片單元格添加圖像控件,具體操作為:
(1)點擊Excel選項,選擇“常用”→在功能區顯示“開發工具”選項卡;
(2)在Excel中選擇開發工具→插入ActiveX控件→圖像控件,鼠標變成十字型,在照片單元格拖動鼠標添加圖像控件,同時在編輯欄中將“EMBED("Forms.Image.1","")”修改為“photo”。
(3)在學生證模板的學號單元格輸入不同學號,照片自動更新,如圖4所示。
4 小結
本文通過實例分析、實例討論和操作實現三個環節,將Excel中名稱的定義、圖像控件、Index和match函數的使用方法和操作要點糅合在具體任務中,實現了學生證照片的動態調用。通過本實例的學習實踐,既鍛煉了學生應用Excel查找和引用函數解決實際問題的能力,又提高了學生分析簡化問題的能力和探索實踐能力,激發了學生的學習興趣。
參考文獻:
[1]蔡小艷,曾垂振,盧莉娜,潘魯萍.案例教學在Excel查找和引用函數中的應用[J].福建電腦,2016(09):136-137.
[2]焦妍.Excel中INDEX()和VLOOKUP()的應用實例[J].信息與電腦,2016(18):129-130.
[3]梁建鳳.MATCH、INDEX函數在高校學生信息管理中的應用[J].科教導刊,2011(15):81-83.
作者簡介:蔡小艷(1984-),女,湖北京山人,講師,碩士,主要研究方向:計算機網絡、信息化等。