如何尋找 Excel 表格中的資料

文章翻譯 文章翻譯
文章編號: 324861 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

結論

本文將逐步告訴您如何使用 Microsoft Excel 的各種內建函式尋找表格 (或特定範圍儲存格) 中的資料。您可以使用不同的公式來求得相同結果。

建立範例工作表

本文使用範例工作表來說明 Excel 的內建函式,例如參照欄 A 的人名,再傳回該人員在欄 C 中的年齡。如果要建立這張工作表,請在空白的 Excel 工作表中輸入下列資料。

您將在儲存格 E2 中輸入所要尋找的值。您可以在相同工作表的任何空白儲存格中輸入公式。
摺疊此表格展開此表格
ABCDE
1名稱部門年紀尋找值
2吳榮燦50128陶怡青
3羅景晨20119
4陶怡青10122
5沈鏡如30129

詞彙定義

本文使用下列詞彙說明 Excel 內建函式:
摺疊此表格展開此表格
詞彙定義範例
Table_Array整張查閱表格。A2:C5
Lookup_Value在 Table_Array 的第一欄中所要尋找的值。E2
Lookup_Array
- 或 -
Lookup_Vector
包含可能查閱值的儲存格範圍。A2:A5
Col_Index_NumTable_Array 中應傳回相符值的欄號。3 (Table_Array 的第三欄)
Result_Array
- 或 -
Result_Vector
僅包含一列或欄的範圍。這個範圍大小必須與 Lookup_Array 或 Lookup_Vector 相同。C2:C5
Range_Lookup 邏輯值 (TRUE 或 FALSE)。如果是 TRUE 或是省略,就會傳回近似的相符值。如果是 FALSE,則會尋找完全相符值。FALSE
Top_Cell這是您要做為位移依據的參照。Top_Cell 必須參照某個儲存格或某個範圍的相鄰儲存格。否則,OFFSET 會傳回錯誤值 #VALUE!。
Offset_Col 這是您希望結果的左上方儲存格向左或向右參照的欄數。例如,Offset_Col 引數 "5" 會指定參照的左上方儲存格是參照右側的五個欄。Offset_Col 可以是正值 (表示起始參照位置的右側) 或是負值 (表示起始參照位置的左側)。

函式

LOOKUP()

LOOKUP 函式會尋找單一列或單一欄中的值,並將它與不同列或欄中位於相同位置的值進行比對。

下列是 LOOKUP 公式語法的範例:
=LOOKUP(Lookup_Value,Lookup_Vector,Result_Vector)

下列公式會在範例工作表中找出陶怡青的年紀:
=LOOKUP(E2,A2:A5,C2:C5)
此公式會使用儲存格 E2 中的值「陶怡青」,並在查閱向量 (欄 A) 中尋找「陶怡青」。接著公式會比對結果向量 (欄 C) 中同一列的值。「陶怡青」位於列 4,因此 LOOKUP 會傳回欄 C 中列 4 的值 (22)。

注意 必須先排序表格,才能使用 LOOKUP 函式。
如需有關 LOOKUP 函式的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
324986 如何使用 Excel 中的 LOOKUP 函式

VLOOKUP()

當資料列在欄中時,會使用 VLOOKUP 或垂直查閱函式。這個函式會搜尋最左一欄的值,並將其與同一列中指定欄的資料進行比對。您可以使用 VLOOKUP 來尋找已排序或未排序表格中的資料。下列範例使用的是未排序資料的表格。

以下是 VLOOKUP 公式語法的範例:
=VLOOKUP(Lookup_Value,Table_Array,Col_Index_Num,Range_Lookup)
下列公式會在範例工作表中找出陶怡青的年紀:
=VLOOKUP(E2,A2:C5,3,FALSE)
此公式使用儲存格 E2 的值「陶怡青」,找出最左一欄 (欄 A) 中的「陶怡青」。接著公式會比對 Column_Index 中同一列的值。此範例的 Column_Index 是 "3" (欄 C)。「陶怡青」位於列 4,因此 VLOOKUP 會傳回欄 C 中列 4 的值 (22)。
如需有關 VLOOKUP 函式的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
181213 如何使用 VLOOKUP 或 HLOOKUP 尋找完全相同的值

INDEX() 和 MATCH()

您可以同時使用 INDEXMATCH 函式,以取得與使用 LOOKUPVLOOKUP 相同的結果。

下列語法範例結合了 INDEXMATCH,產生與先前範例中使用 LOOKUPVLOOKUP 的相同結果:
=INDEX(Table_Array,MATCH(Lookup_Value,Lookup_Array,0),Col_Index_Num)

下列公式會在範例工作表中找出陶怡青的年紀:
=INDEX(A2:C5,MATCH(E2,A2:A5,0),3)
此公式會使用儲存格 E2 的值「陶怡青」,並在欄 A 中找出「陶怡青」。接著公式會比對欄 C 中同一列的值。「陶怡青」位在列 4,因此公式會傳回欄 C 中列 4 的值 (22)。

注意 如果 Lookup_Array 中沒有儲存格符合 Lookup_Value (陶怡青),則此公式會傳回 #N/A。
如需有關 INDEX 函式的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
324988 XL2002: How to Use the INDEX Function to Find Data in a Table

OFFSET() 和 MATCH()

您可以同時使用 OFFSETMATCH 函式,產生先前範例中的函式所產生的相同結果。

以下語法範例中結合了 OFFSETMATCH,產生與 LOOKUPVLOOKUP 相同的結果:
=OFFSET(top_cell,MATCH(Lookup_Value,Lookup_Array,0),Offset_Col)
這個公式會在範例工作表中找出陶怡青的年紀:
=OFFSET(A1,MATCH(E2,A2:A5,0),2)
此公式會使用儲存格 E2 的值「陶怡青」,並在欄 A 中找出「陶怡青」。接著公式會比對同一列中向右第二欄的值 (欄 C)。「陶怡青」位在欄 A 中,因此公式會傳回欄 C 中列 4 的值 (22)。
如需有關 OFFSET 函式的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
324991 XL2002: How to Use the OFFSET Function

屬性

文章編號: 324861 - 上次校閱: 2007年2月15日 - 版次: 4.0
這篇文章中的資訊適用於:
  • Microsoft Office Excel 2007
  • Microsoft Office Excel 2003
  • Microsoft Excel 2002 Standard Edition
  • Microsoft Excel 2000 Standard Edition
關鍵字:?
kbhowtomaster kbhowto KB324861
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com