Excel不同分頁抓資料:6種方法完整教學與公式範例【2026最新】

微軟 excel 教學

Excel不同分頁抓資料:6種方法完整教學與公式範例【2026最新】

文章目錄
  1. Excel 跨分頁引用的基本語法
  2. 方法一:VLOOKUP 跨分頁查找
  3. 方法二:XLOOKUP 取代 VLOOKUP 的新選擇
  4. 方法三:INDIRECT 動態切換分頁
  5. 方法四:INDEX + MATCH 組合查找
  6. 方法五:3D 參照跨多分頁彙總
  7. 六種方法完整比較與選擇建議
  8. 常見錯誤代碼與排查方法
  9. Excel 跨分頁抓資料實戰操作指引

Excel 不同分頁抓資料,最常用的方式是在儲存格輸入 =工作表名稱!儲存格位址,即可即時引用另一張工作表的數據。除了直接引用,還有 VLOOKUP、XLOOKUP、INDIRECT、INDEX+MATCH、3D 參照等五種進階方法,適用於不同的跨分頁資料整合情境。本篇教學將逐一示範每種方法的公式寫法、適用場景與常見錯誤排查,讓你根據實際需求選出最有效率的做法。

延伸閱讀:Excel不同工作表資料同步秘訣:跨表輸入數據的終極指南

Excel 跨分頁引用的基本語法

跨分頁引用的核心語法是 =工作表名稱!儲存格位址,Excel 會即時從指定分頁抓取對應的值。這是所有跨分頁操作的基礎,無論後續使用哪種函數,都建立在這個語法之上。

操作步驟如下:

  1. 在目標分頁選取要放結果的儲存格。
  2. 輸入等號 =
  3. 用滑鼠點擊來源分頁的標籤,再點選要引用的儲存格。
  4. 按下 Enter,公式自動產生,例如 =Sheet1!A1

如果工作表名稱含有空格或特殊字元,必須用單引號包住名稱。例如引用「部門 A」分頁的 B2 儲存格,公式寫成 ='部門 A'!B2

跨分頁引用語法速查表
情境 公式範例 說明
同檔案、標準名稱 =Sheet1!A1 直接引用,最基本寫法
同檔案、名稱含空格 ='部門 A'!B2 單引號包住工作表名稱
不同檔案 ='[data.xlsx]Sheet2'!A1 方括號包住檔案名稱,來源檔需開啟
不同檔案(已關閉) ='C:\資料\[data.xlsx]Sheet2'!A1 需加完整路徑,資料不會即時更新

方法一:VLOOKUP 跨分頁查找

VLOOKUP(Vertical Lookup)是根據關鍵值,在另一分頁的表格中由左往右查找並回傳對應欄位資料的函數。它是 Excel 2007 以來最廣泛使用的跨分頁查找工具,適合「有明確對照鍵」的批次資料比對。

公式結構:

=VLOOKUP(查找值, 來源分頁!範圍, 欄位序號, FALSE)

實際範例:假設「訂單」分頁的 A 欄是產品編號,你要從「產品資料」分頁抓取對應的產品名稱(位於第 2 欄):

=VLOOKUP(A2, 產品資料!$A$1:$C$500, 2, FALSE)

  • A2:當前分頁的查找值(產品編號)。
  • 產品資料!$A$1:$C$500:來源分頁的查找範圍,用絕對參照 $ 鎖定,避免拖曳時範圍偏移。
  • 2:回傳查找範圍中第 2 欄的值。
  • FALSE:精確比對,找不到會回傳 #N/A

實戰經驗:我在整理跨部門月報時,最常踩的坑是忘記鎖定範圍——拖曳公式到第 50 列時,查找範圍已經偏移了 49 列,結果全部錯誤。養成習慣:VLOOKUP 的第二個參數一律加 $ 符號鎖定。另外,查找值的格式務必統一,「001」(文字)和 1(數字)在精確比對下視為不同值,這是 #N/A 最常見的原因。

方法二:XLOOKUP 取代 VLOOKUP 的新選擇

XLOOKUP 是 Microsoft 365 與 Excel 2021 以上版本提供的新一代查找函數,語法更直覺,且支援向左查找,解決了 VLOOKUP 只能向右查找的限制。根據 Microsoft 官方文件(2023 年更新),XLOOKUP 已被推薦作為 VLOOKUP 的替代方案。

公式結構:

=XLOOKUP(查找值, 查找範圍, 回傳範圍, [找不到時的值], [比對模式], [搜尋模式])

實際範例:同樣從「產品資料」分頁抓取產品名稱:

=XLOOKUP(A2, 產品資料!$A:$A, 產品資料!$B:$B, "查無資料")

VLOOKUP vs XLOOKUP 功能比較
比較項目 VLOOKUP XLOOKUP
查找方向 僅能向右 向左、向右皆可
找不到時的預設值 回傳 #N/A 可自訂預設值(第 4 參數)
語法複雜度 需指定欄位序號 直接指定回傳範圍,更直覺
效能 整欄搜尋時較慢 支援二分搜尋,大資料集更快
版本支援 Excel 2007+ Microsoft 365 / Excel 2021+

如果你的公司仍使用 Excel 2016 或更早版本,只能使用 VLOOKUP;若已升級至 Microsoft 365,建議優先使用 XLOOKUP,語法更清晰且不易出錯。

方法三:INDIRECT 動態切換分頁

INDIRECT 函數能將文字字串轉換為儲存格參照,讓你透過變更儲存格的文字內容,動態切換要抓取的分頁。這在製作「下拉選單切換報表」時特別實用。

公式結構:

=INDIRECT("'" & A1 & "'!B2")

其中 A1 儲存格放的是分頁名稱(例如「一月」「二月」),公式會自動抓取對應分頁的 B2 值。搭配資料驗證(Data Validation)製作下拉選單,使用者只要切換選項,報表數據就會即時更新。

INDIRECT 的限制與注意事項:

  • 僅限同一檔案:INDIRECT 無法跨檔案引用,這是與直接引用最大的差異。
  • 效能影響:INDIRECT 屬於揮發性函數(Volatile Function),每次工作表重新計算時都會重算,在大型檔案中大量使用(超過 500 個)會明顯拖慢速度。
  • 分頁名稱必須完全正確:拼錯一個字就會回傳 #REF!,建議搭配資料驗證限制輸入值。

方法四:INDEX + MATCH 組合查找

INDEX + MATCH 是進階使用者最推薦的查找組合,比 VLOOKUP 更靈活——不受欄位順序限制,且查找效能更佳。根據 Excel MVP 社群的測試,在超過 10 萬列的資料集中,INDEX+MATCH 的運算速度比 VLOOKUP 快約 30%。

公式結構:

=INDEX(來源分頁!回傳範圍, MATCH(查找值, 來源分頁!查找範圍, 0))

實際範例:從「員工資料」分頁根據姓名(C 欄)查找員工編號(A 欄,位於姓名左側):

=INDEX(員工資料!$A:$A, MATCH(B2, 員工資料!$C:$C, 0))

這個查找方向是「向左」,VLOOKUP 做不到,但 INDEX+MATCH 和 XLOOKUP 都能處理。

  • INDEX(範圍, 列號):回傳指定範圍中第 N 列的值。
  • MATCH(查找值, 範圍, 0):回傳查找值在範圍中的位置(列號),0 代表精確比對。
  • 兩者組合後,MATCH 找到位置,INDEX 回傳該位置的值。

方法五:3D 參照跨多分頁彙總

3D 參照(3D Reference)能一次加總多張結構相同的工作表中同一儲存格的值,是製作月報、季報、部門彙總的最快方法。例如加總「一月」到「十二月」共 12 張分頁的 C5 儲存格:

=SUM(一月:十二月!C5)

使用 3D 參照的前提條件:

  • 所有被參照的分頁必須結構完全相同(同一個儲存格位址放同類型的資料)。
  • 分頁必須連續排列在工作表標籤上(中間不能插入其他分頁)。
  • 支援的函數包括:SUM、AVERAGE、COUNT、MAX、MIN 等聚合函數。
3D 參照常用公式範例
需求 公式 說明
加總 12 個月的 C5 =SUM(一月:十二月!C5) 一次加總 12 張分頁
計算平均值 =AVERAGE(一月:十二月!C5) 12 個月的 C5 平均
找最大值 =MAX(部門A:部門D!B10) 4 個部門中 B10 的最大值
計算非空儲存格數 =COUNTA(Q1:Q4!A1) 4 季中 A1 有填值的數量

六種方法完整比較與選擇建議

沒有「最好」的方法,只有「最適合你情境」的方法——根據資料量、Excel 版本、是否需要動態切換來決定。以下整理六種跨分頁抓資料方法的完整比較:

Excel 跨分頁抓資料方法比較總表
方法 難度 查找方向 動態切換 跨檔案 版本需求 最佳適用場景
直接引用 所有版本 少量固定儲存格
VLOOKUP 僅向右 Excel 2007+ 批次對照、資料比對
XLOOKUP 雙向 365 / 2021+ 取代 VLOOKUP 的首選
INDIRECT 中高 所有版本 下拉選單切換報表
INDEX+MATCH 雙向 所有版本 大資料集、進階查找
3D 參照 所有版本 多分頁同格位彙總

快速選擇指南:

  • 只抓 1-2 個固定值 → 直接引用
  • 根據關鍵字批次比對 → VLOOKUP(舊版)或 XLOOKUP(新版)
  • 需要向左查找或大資料集 → INDEX+MATCH
  • 報表需動態切換分頁 → INDIRECT
  • 多張結構相同分頁要加總 → 3D 參照

常見錯誤代碼與排查方法

跨分頁公式最常遇到的三個錯誤是 #REF!#N/A#VALUE!,各有不同的成因與修復方式。以下整理完整的錯誤排查對照表:

Excel 跨分頁公式錯誤排查表
錯誤代碼 常見原因 排查步驟 修復方法
#REF! 來源分頁被刪除或更名 檢查公式中的工作表名稱是否存在 修正分頁名稱,或重新建立引用
#N/A VLOOKUP/XLOOKUP 找不到對應值 確認查找值的格式(文字 vs 數字) 統一格式,或用 IFERROR 包裹公式
#VALUE! 公式參數型態不符 逐一檢查各參數是否為預期型態 用 VALUE() 或 TEXT() 轉換格式
值為 0 但預期有資料 來源儲存格為空白 切到來源分頁確認該格是否真的有值 用 IF 判斷空值:=IF(Sheet1!A1="","",Sheet1!A1)

處理 #N/A 錯誤的實用公式:

=IFERROR(VLOOKUP(A2, 產品資料!$A:$C, 2, FALSE), "查無資料")

IFERROR 會在公式出錯時回傳你指定的替代值,避免報表上出現醜陋的錯誤代碼。截至 2026 年,這仍是 Excel 社群中處理查找錯誤最推薦的做法。

Excel 跨分頁抓資料實戰操作指引

以下是從零開始建立跨分頁資料整合的完整步驟,適用於最常見的「多部門月報彙總」情境。

  1. 統一各分頁結構:確保所有來源分頁的欄位順序、標題列位置完全一致。例如 A 欄放「項目名稱」、B 欄放「金額」、C 欄放「備註」,每張分頁都相同。
  2. 建立彙總分頁:新增一張「總表」工作表,在 A1 輸入標題列,從 A2 開始放各部門的資料。
  3. 選擇適合的抓取方法:若只需加總同一格位,用 3D 參照(=SUM(部門A:部門D!B2));若需根據關鍵字比對,用 VLOOKUP 或 XLOOKUP。
  4. 鎖定參照範圍:所有跨分頁公式的範圍參數,一律加上 $ 符號(如 $A$1:$C$500),防止拖曳時範圍偏移導致錯誤。
  5. 加上錯誤處理:用 IFERROR() 包裹查找公式,指定找不到時顯示的替代文字(如「查無資料」或空白 "")。
  6. 測試與驗證:隨機抽查 3-5 筆資料,手動切到來源分頁核對數值是否正確。特別注意格式差異(日期格式、數字 vs 文字)。
  7. 儲存並記錄:完成後另存新檔,並在彙總分頁加註說明(資料來源分頁、更新日期),方便日後維護。
Q1:VLOOKUP 回傳 #N/A,但資料明明存在?

最常見的原因是格式不一致:查找值是文字格式(如「001」),但來源資料是數字格式(如 1)。解決方法是用 VALUE() 將文字轉數字,或用 TEXT() 將數字轉文字,確保兩端格式統一。也可以用 TRIM() 去除多餘空格。

Q2:INDIRECT 可以引用其他 Excel 檔案的資料嗎?

不行。INDIRECT 只能引用同一工作簿內的分頁。如果需要跨檔案動態引用,建議改用 Power Query(取得資料 > 從活頁簿),或是用直接引用公式 ='[檔案名.xlsx]工作表'!A1

Q3:Excel 2016 可以用 XLOOKUP 嗎?

不行。XLOOKUP 僅支援 Microsoft 365 訂閱版和 Excel 2021 以上的買斷版。Excel 2016 使用者建議改用 INDEX+MATCH 組合,功能幾乎等效,且所有 Excel 版本都支援。

Q4:3D 參照的分頁順序被打亂會怎樣?

3D 參照依據分頁標籤的排列順序運作。如果你在「一月」和「十二月」之間插入了一張新分頁,該分頁的資料也會被納入計算。反之,若移除某張分頁,該分頁的資料就會被排除。建議使用 3D 參照時,鎖定好分頁順序,不要隨意搬移。

Q5:大量跨分頁公式導致檔案很慢怎麼辦?

三個加速技巧:(1)將計算模式改為「手動」(公式 > 計算選項 > 手動),需要時再按 F9 重新計算;(2)減少 INDIRECT 和其他揮發性函數的使用量;(3)考慮用 Power Query 取代公式,將資料「載入」而非「即時運算」,檔案會明顯變快。根據 Microsoft 官方建議,超過 10 萬列的資料整合應優先使用 Power Query。

Q6:如何一次從多張分頁批次抓取資料到總表?

最有效率的方式是使用 Power Query(取得資料 > 從活頁簿 > 選擇多張工作表)。Power Query 會自動合併所有選定分頁的資料,並在來源更新時一鍵重新整理。若不想用 Power Query,也可以用 VBA 巨集迴圈遍歷各分頁,但維護成本較高。

Q7:跨分頁引用時,來源分頁被刪除怎麼補救?

一旦來源分頁被刪除,所有引用該分頁的公式都會變成 #REF! 錯誤,且無法自動復原。補救步驟:(1)立即按 Ctrl+Z 嘗試復原刪除;(2)若已儲存,從備份檔或自動回復檔中找回;(3)未來建議開啟「保護工作表」功能,防止誤刪重要分頁。