Excel函式應用例項:職工資訊查詢(轉)

amyz發表於2007-08-13
Excel函式應用例項:職工資訊查詢(轉)[@more@]

  Excel提供的“記錄單”功能可以查詢記錄,如果要查詢人事管理工作表中的某條記錄,然後把它列印出來,可以採用下面介紹的方法。

  (1)函式分解

  INDEX函式返回資料清單或陣列中的元素值,此元素由行序號和列序號的索引值給定。

  INDEX函式有兩種語法形式:陣列和引用。陣列形式通常返回數值或數值陣列,引用形式通常返回引用。當函式INDEX的第一個引數為陣列常數時,使用陣列形式。

  語法1(陣列形式):INDEX(array,row_num,column_num)

  Array為單元格區域或陣列常量。如果陣列只包含一行或一列,則相對應的引數row_num或column_num為可選。如果陣列有多行和多列,但只使用row_num或column_num,函式INDEX返回陣列中的整行或整列,且返回值也為陣列;Row_num為陣列中某行的行序號,函式從該行返回數值。如果省略row_num,則必須有column_num;Column_num為陣列中某列的列序號,函式從該列返回數值。如果省略column_num,則必須有row_num。

  語法2(引用形式):INDEX(reference,row_num,column_num,area_num)

  Reference表示對一個或多個單元格區域的引用。如果為引用輸入一個不連續的區域,必須用括號括起來。如果引用中的每個區域只包含一行或一列,則相應的引數row_num或column_num分別為可選項;Row_num引用中某行的行序號,函式從該行返回一個引用;Column_num引用中某列的列序號,函式從該列返回一個引用;Area_num選擇引用中的一個區域,並返回該區域中row_num和column_num的交叉區域。選中或輸入的第一個區域序號為1,第二個為2,以此類推。如果省略area_num,函式INDEX使用區域1。

  MATCH函式返回在指定方式下與指定數值匹配的陣列中元素的相應位置。

  語法:MATCH(lookup_value,lookup_array,match_type)

  Lookup_value為需要在資料表中查詢的數值;Lookup_value為需要在Look_array中查詢的數值;Match_type為數字-1、0或1。

    (2)例項分析

  如果上面的人事管理工作表放在Sheet1中,為了防止因查詢操作而破壞它(必要時可以新增只讀保護),我們可以開啟另外一個空白工作表Sheet2,把上一個資料清單中的列標記複製到第一行。假如你要以“身份證號碼”作為查詢關鍵字,就要在C2單元格中輸入公式“=INDEX(Sheet1!C2:C600,MATCH( SC S5,Sheet1! SC S2: SC S600,0),1)”。其中的引數“ SC S5”引用公式所在工作表中的C5單元格(也可以選用其他單元格),執行查詢時要在其中輸入查詢關鍵字,也就是待查詢記錄中的身份證號碼。引數“Sheet1!C2:C600”設定INDEX函式的查詢範圍,引用的是資料清單C列的所有單元格。MATCH函式中的引數“0”指定它查詢“Sheet1! SC S2: SC S600”區域中等於 SC S5的第一個值,並且引用的區域“Sheet1! SC S2: SC S600,0”可以按任意順序排列。

  上面的公式執行資料查詢操作時,首先由MATCH函式在“Sheet1! SC S2: SC S600”區域搜尋,找到“ SC S5”單元格中的資料在引用區域中的位置(自上而下第幾個單元格),從而得知待查詢資料在引用區域中的第幾行。

  接下來INDEX函式根據MATCH函式給出的行號,返回“Sheet1!C2:C600”區域中對應行數單元格中的資料。假設其中待查詢的“身份證號碼”是“3234567896”,它位於“Sheet1! SC S2: SC S600”區域的第三行,MATCH函式就會返回“3”。接著INDEX函式返回“Sheet1!C2:C600”區域中行數是“3”的資料,也就是“3234567896”。

  然後,我們將游標放到C2單元格的填充柄上,當十字游標出現以後向右拖動,從而把C2中的公式複製到D2、E2等單元格(然後再向左拖動,以便把公式複製到B2、A2單元格),這樣就可以獲得與該身份證號對應的性別、籍貫等資料。

  注意:公式複製到D2、E2等單元格以後,INDEX函式引用的區域就會發生變化,由C2:C600變成D2:D600、E2:E600等等。但是MATCH函式返回的(相對)行號仍然由查詢關鍵字給出,此後INDEX函式就會根據MATCH函式返回的行號從引用區域中找到資料。

  在Sheet2工作表中進行查詢時只要在查詢輸入單元格中輸入關鍵字,回車後即可在工作表的C2單元格內看到查詢出來的身份證號碼。如果輸入的身份證號碼關鍵字不存在或輸入錯誤,則單元格內會顯示“#N/A”字樣。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-955091/,如需轉載,請註明出處,否則將追究法律責任。

相關文章