回覆列表
  • 1 # 使用者1751179804897

    在別處看到的,總結比較全面,借花獻佛!

    1、常規查詢

    如圖,需要從B~E的資料表中,根據H3單元格的姓名查詢對應的職務。

    公式為:=VLOOKUP(H3,C:E,3,0)

    提示:VLOOKUP函式第三引數中的列號,不能理解為工作表中實際的列號,而是指定要返回查詢區域中第幾列的值。

    2、帶萬用字元的查詢

    如圖,需要從B~E的資料表中,根據H3單元格的姓氏,查詢對應的姓名和部門。

    公式為:=VLOOKUP($H3&"*",$C:$E,COLUMN(A1),0)

    提示:

    萬用字元“*”表示任意多個字元,VLOOKUP函式第一引數使用$H3&"*",即在C列中查詢以H2單元格內容開頭的內容,並返回對應列的資訊。

    3、近似查詢

    如圖,需要根據H~I的對照表,判斷D列成績對應的評議結果。

    公式為:=VLOOKUP(D2,H:I,2)

    提示:VLOOKUP函式第四引數被省略,在近似匹配模式下返回查詢值的精確匹配值或近似匹配值。如果找不到精確匹配值,則返回小於查詢值的最大值。

    使用近似匹配時,查詢區域的首列必須按升序排序,否則無法得到正確的結果。

    4、逆向查詢

    如圖,需要從B~E的資料表中,根據H3單元格的部門,查詢對應的姓名。

    公式為:=VLOOKUP(H3,CHOOSE({1,2},D2:D11,C2:C11),2,0)

    提示:

    VLOOKUP函式的查詢值要求必須位於查詢區域中的首列,如果被查詢值不在資料表的首列時,需要先將目標資料進行特殊的轉換。

    CHOOSE函式第一引數使用常量陣列{1,2},將查詢值所在的D2:D11和返回值所在的C2:C11整合成一個新的兩列多行的記憶體陣列。

    生成的記憶體陣列符合VLOOKUP函式的查詢值必須處於資料區域中首列的要求。VLOOKUP函式以職務做查詢條件,在記憶體陣列中查詢並返回對應的姓名資訊,從而實現了逆向查詢的目的。

    5、多條件查詢

    如圖,需要從B~E的資料表中,根據H3單元格的部門和I3單元格的職務,查詢對應的姓名。

    J3單元格公式為:=VLOOKUP(H3&I3,IF({1,0},D2:D11&E2:E11,C2:C11),2,)

    提示:· 使用連線符“&”將部門和職務合併成新的字串,以此作為VLOOKUP函式的查詢條件。

    IF部分,先將D列的部門和E列的職務進行連線,再使用IF({1,0}的方式,構造出部門職務在前、姓名在後的記憶體陣列。

    VLOOKUP函式在IF函式構造出的記憶體陣列首列中查詢部門職務字串的位置,返回對應的姓名。

    陣列公式,不要忘了按<Ctrl+Shift+Enter>組合鍵。

    6、一對多查詢

    如圖,需要從B~E的資料表中,根據H3單元格的職務,查詢對應的多個姓名。

    首先在A2單元格輸入以下公式,向下複製:

    =(E2=$H$3)+A1

    然後在I3單元格輸入以下公式,向下複製:

    =IFERROR(VLOOKUP(ROW(A1),A:C,3,0),"")

    提示:

    C列的職務每重複出現一次,A列的序號增加1。

    VLOOKUP函式使用1至N的遞增序列作為查詢值,使用A:C列作為查詢區域,以精確匹配的方式返回與之相對應的B列的姓名。注意查詢區域必須由輔助列A列開始。

    最後將輔助列字型設定為白色或進行隱藏即可。

    7、按指定次數重複資料

    如圖,需要根據C列指定的次數,重複顯示B列的內容。

    首先在A2單元格輸入以下公式,向下複製:

    =A1+C2

    然後在E2單元格輸入以下公式,向下複製:

    =IFERROR(VLOOKUP(ROW(A1),A:B,2,0),E3)&""

  • 中秋節和大豐收的關聯?
  • matlab怎麼畫離散點圖?