董海桃
(山西機電職業技術學院,山西 長治 046011)
OFFICE辦公組件中的Excel是一個電子表格軟件,它是一種通用的計算工具,非常容易操作。它以電子表格方式處理數據,對于表格數據的建立、編輯、訪問、查詢等操作很方便,可以像數據庫軟件一樣對記錄進行添加、刪除、修改、排序、篩選和分類匯總等處理。另外它還提供大量系統函數,可用于數據統計、數據分析等,特別適合財務會計等領域。但由于Excel具有復制函數的功能,使得它在編程方面的復雜度大大降低。
在學院的財務系統中通常有這樣的情況,每一學期都要收取一定的費用,且每次收費在不同的表中存儲,待一定時期時要查看每個學生的每次交費情況,需要按學號將數據量較少的表合并到較大的表中。
COUNTIF函數是Microsoft Excel中對指定區域中符合指定條件的單元格計數的一個函數。該函數的語法規則如下:
COUNTIF(參數1,參數2)
參數1:要計算其中非空單元格數目的區域
參數2:以數字、表達式或文本形式定義的條件。
如果返回0,表示參數1所示的區域內沒有滿足參數2給定條件的記錄。否則返回參數1所示的區域內滿足參數2給定條件的記錄的條數。
例如:查找sheet1中A2單元格的內容是否在sheet2中A1—C8區域內,結果存放在sheet1的D2單元格內。如圖1、圖2所示。

圖1 COUNTIF函數

圖2 交費表
可以在sheet1的D2單元格內使用以下公式:
=COUNTIF(Sheet2!A2:C8,A2),結果顯示1,表示在sheet2中A1到C8區域內存在A2單元格的內容。
IF函數是對數值或公式進行條件檢測的函數,它可以根據判斷條件的真假值的不同,執行不同的表達式,從而返回不同結果。IF函數的語法規則如下:
IF(參數1,參數2,參數3)
參數1:以數字、表達式或文本形式定義的條件
參數2:當參數1的條件為真時執行的表達式
參數3:當參數1的條件為假時執行的表達式
例如:查找sheet1中A2單元格的內容是否在sheet2中A1-C8區域內,如果在,則顯示“在”,否則顯示“不在”,結果存放在sheet1的D2單元格內。如圖3、圖4所示。

圖3 IF和COUNTIF的組合

圖4 VLOOKUP函數的使用
可以在sheet1的D2單元格內使用以下公式:=IF(COUNTIF(Sheet2!A$2:C$8,A2),“在”,“不在”),結果顯示“在”,表示COUNTIF(Sheet2!A2:C8,A2)執行的結果為非零,即為真,在sheet2中A1—C8區域內有A2單元格的內容。
VLOOKUP函數是一個按列(縱向)查找的函數,其結果是返回該列所需查詢列序所對應的值;和VLOOKUP函數同類的函數還有HLOOKUP函數,但函數HLOOKUP是按行(橫向)查找的。
VLOOKU函數的語法規則如下:
VLOOKUP(參數1,參數2,參數3,參數4)
參數1:表示要查找的數
參數2:表示要在哪一個區域的第一列查找參數1
參數3:表示要返回的列序號
參數4:默認值為TRUE,表示函數查找時是精確匹配,還是模糊(近似)匹配。如果參數設置為FALSE或0,則返回精確匹配,但如果找不到,則返回錯誤值#N/A。如果參數設置為TRUE或1或不設置,將查找近似匹配值,也就是說,如果找不到精確匹配值,則返回小于參數1的最大數值。
解決此問題就是要將sheet1表的D列作為“交費2”,對照合并sheet2的“交費2”。即:在sheet1表中的A2單元格內容為“142101”,在sheet2表中A列查找是否有“142101”,如果有,則將其對應的第三列數據插入到sheet1表的D2單元格內。
使用VLOOKUP函數解決此問題:
第一個參數:A2單元格
第二個參數:Sheet2表的A2到C8區域,表示為:Sheet2!$A$2:$C$8。此處A2:C8采用絕對地址,即字母和數字前面加了$符號,表示無論公式如何復制這個區域是不會變的。
第三個參數:選取第二個參數所表示區域的第幾列,選擇3,表示選取對應的值的第3列數據。
第四個參數:這里要精確匹配,所以填0。
所以,公式為:=VLOOKUP(A2,Sheet2!$A$2:$C$8,3)
最后拖動句柄復制公式,結果如圖4、圖2所示。這時就會發現A3單元格的內容在sheet2表中找不到,則D2單元格顯示#N/A。如果希望找不到數據對應的單元格不顯示#N/A,而顯示0,則可以使用前面的兩個函數,=IF(COUNTIF(Sheet2!A$2:C$8,A2),“在”,“不在”)。
用公式VLOOKUP(A2,Sheet2!$A$2:$C$8,3)代替“在”,用0代替“不在”。則公式變為:
=IF(COUNTIF(Sheet2!A$2:C$8,A2),VLOOKUP(A2,Sheet2!$A$2:$C$8,3),0)如圖5所示,問題便可得到解決。

圖5 IF、COUNTIF和VLOOKUP函數綜合