贊助廠商

///本部落格所有文章列表///

搜尋本部落格文章資料

本文利用 VLOOKUP 函數來說明陣列的應用。例如:在下圖的資料表中,當輸入「類別」時,希望能自動帶出「費用」,最簡單的方式是用函數來查表。而函數中就會用到陣列。

(1) 使用輔助資料表

儲存格B2:=VLOOKUP(A2,$D$2:$E$5,2,FALSE)

必須先建立一個類別和費用對照的輔助資料表,然後在 VLOOKUP 函數中直接取用該資料表,形成一個變數陣列。好處是若修改資料表內容時,不用修改公式。

 

(2) 不使用輔助資料表

儲存格B2:=VLOOKUP(A2,{"電腦軟體應用",800;"電腦硬體裝修",1200;"工業電子",1100;"數位電子",1300},2,FALSE)

如果不使用輔助資料表,就要使用常數陣列,並且會讓公式變長,而每次修改資料內容時,都要修改公式。

參考下圖,該陣列為二維陣列,常數陣列的內容要用「{  }」含括,每一列資料以「;」隔開,每一列中各欄的項目以「,」隔開。

{"電腦軟體應用",800;"電腦硬體裝修",1200;"工業電子",1100;"數位電子",1300}

image

 

創作者介紹
創作者 vincent 的頭像
vincent

學不完.教不停.用不盡

vincent 發表在 痞客邦 留言(15) 人氣()


留言列表 (15)

發表留言
  • 訪客
  • 您好!昨天使用VLOOKUP這函數時,在設定第2的引數Table _array時,無法選擇另一個檔案的工作表,在之前都是可以的,也做過無數次!
    我的做法是2個檔案都在打開的情況下,在A檔案的工作表,輸入VLOOKUP函數,到Table_array時,直接框選B檔案的工作表對照範圍,但完全無法選取(沒有產生選取框框),似乎是無法跨檔案的樣子。
    試著將B檔案的參照資料範圍copy到同檔案的另一個sheet, 再執行這個公式,選取資料範圍沒有問題,因此同一個檔案不同sheet執行沒有問題。
    在網路上搜詢好久,都找不到解答,不得已請版主撥空賜教,感激不盡!
  • 我以Excel 2013試了幾次,在A檔案中利用VLOOKUP函數查詢B檔案的內容,都是可以順利查詢的。
    公式範例如下:
    =VLOOKUP(A2,[活頁簿2.xlsx]工作表1!$A$2:$B$11,2,FALSE)

    vincent 於 2016/08/19 19:55 回覆

  • 悄悄話
  • 悄悄話
  • ju
  • 老師 : 我有發現到了, 問題解決了, 非常感謝您!
  • tresas
  • 您的各個VBA教學讓我從完全不會到熟悉,雖然本來就有JAVA等相關程式基礎,但真的是分常非常感謝您的付出。網路上的資訊相關工作者因您而收穫甚多,感謝。
  • 謝謝你光臨我的網站。

    vincent 於 2017/06/04 17:49 回覆

  • 訪客
  • 不好意思,有兩個Table_array的問題想請教:

    1.請問VLOOKUP公式中的Table_array 可以讓他自動遞增嗎?

    例如:
    A1=VLOOKUP(A2,[活頁簿2.xlsx]工作表1!$A$2:$B$5,2,FALSE)
    B1=VLOOKUP(A2,[活頁簿2.xlsx]工作表2!$A$2:$B$5,2,FALSE)
    C1=VLOOKUP(A2,[活頁簿2.xlsx]工作表3!$A$2:$B$5,2,FALSE)
    ...

    2.請問在Table_array中要如何設定,才能將範圍選定在另一活頁簿且是原本活頁簿中某一儲存格值的分頁,希望像底下這樣:

    假如B2=0701 , C2=0705

    結果可以↓
    [活頁簿2.xlsx]B2! = [活頁簿2.xlsx]0701!
    [活頁簿2.xlsx]C2! = [活頁簿2.xlsx]0705!


    想改善每天資料輸入的時間,但又找不到問題的解法,如果版主能幫忙,我非常感謝!!
  • 公式:=INDIRECT("[活頁簿2.xlsx]" & B2 & "!$A$2:$B$5")
    公式:=INDIRECT("[活頁簿2.xlsx]" & C2 & "!$A$2:$B$5")

    vincent 於 2017/07/31 15:43 回覆

  • 訪客
  • 請問一下vlookup這個函數中間的範圍值可以有兩個範圍區間嗎?

    假設=VLOOKUP(A2,$D$2:$E$5,2,FALSE)
    中間的D2:E5有沒有可能是 D2:E3+D5:E5

    麻煩大神解答
  • 請參考:http://isvincent.pixnet.net/blog/post/47938155

    vincent 於 2018/05/16 23:48 回覆

  • cherry0719
  • 您好,請問若想要比對工作表1與工作表2相對應數據比對,該如何下公式,我試了很多公式但都比對不出我要的,例如工作表2 "A1欄位為100,B2為2"要比對工作表1找出A1欄位100,B2為2的資料,但是工作表1 A1欄位有多數個100 B2則可能有1、2、3、4,那我該如何比對與工作表2一樣的數據並回傳到工作表2表示正確? 謝謝您!
  • 悄悄話
  • zoe
  • 請問,我有一個EXCEL檔裡面有很多分頁,在分頁一的A1輸入編號後A2、A3、A4格要顯示分頁2的數據(VLOOKUP),但是我分頁2裡,同一編號有3格不同數字,請問我分頁1的"A3"、"A4"要如何帶公式呢? (A1用正常VLOOKUP沒問題)
  • Lin Hong Han
  • 可以請問兩個問題嗎?
    我目前在排班表,使用這篇的查詢去代入數值,但我有B欄員工姓名不同
    為何我下拉公式套用,每個員工都只出現第一位員工的數值?例如S10這個儲存格內容??

    另外我可以請問如何套用格式化條件去限定一例一休的排班?
    例如T7:Z7大於6天出勤,如何讓這一段儲存格顯示紅色警訊??

    感覺越學越難啊,懇請版大不厭其煩的教導,非常感謝!!

    https://drive.google.com/file/d/1t9iITJKT6frKGJ6oX-WZWoxxCR1bdpXd/view

您尚未登入,將以訪客身份留言。亦可以上方服務帳號登入留言

請輸入暱稱 ( 最多顯示 6 個中文字元 )

請輸入標題 ( 最多顯示 9 個中文字元 )

請輸入內容 ( 最多 140 個中文字元 )

請輸入左方認證碼:

看不懂,換張圖

請輸入驗證碼