假設你的數據表如下:
假設
數據區域是 A1:D4。
你想查詢某人在某個日期的數據。
實現步驟
- 公式
在某個單元格中使用以下公式:
excel
復制代碼
=INDEX(A2:D4, MATCH(“張三”, A2:A4, 0), MATCH(“2025/01/02”, A1:D1, 0))
2. 公式拆解
MATCH(“張三”, A2:A4, 0)
查找“張三”在范圍 A2:A4 中的位置,返回行號。
MATCH(“2025/01/02”, A1:D1, 0)
查找日期 2025/01/02 在范圍 A1:D1 中的位置,返回列號。
INDEX(A2:D4, …, …)
將行號和列號傳遞給 INDEX,返回交叉點的數據值。
- 動態輸入
如果想讓人名和日期可通過輸入框動態調整,可以假設:
人名輸入在 F1。
日期輸入在 G1。
公式改為:
excel
復制代碼
=INDEX(A2:D4, MATCH(F1, A2:A4, 0), MATCH(G1, A1:D1, 0))
4. 注意事項
確保日期的格式一致(可以用 TEXT 函數檢查)。
MATCH 默認是精確匹配(match_type=0)。
如果查找不到值,公式會返回錯誤 #N/A,可以用 IFERROR 包裹,避免報錯,例如:
excel
復制代碼
=IFERROR(INDEX(A2:D4, MATCH(F1, A2:A4, 0), MATCH(G1, A1:D1, 0)), “未找到數據”)
這樣就能動態查詢指定人名和日期的數據值了!