EXCEL單元格是以 行+列的形式表示,如A3,則代表A列的第3行所在的單元格,下拉時行會變,橫向拉動時列會變,如果想行或列不變,只需在前面加上絕對引用符號 $ 就行了。如 A$3(行不變) 或 $A3(列不變),或$A$3(行列都不變)。
所以題目中的公式這部份 Sheet2!A4:B37 改為 ,Sheet2!A$4:B$37,完整公式:
=VLOOKUP(--MID(C3,1,2),Sheet2!A$3:B$36,2,0)
以上公式還可以精簡一點點,寫作:
=VLOOKUP(--LEFT(C3,2),Sheet2!A$3:B$36,2,)
如果對整列的引用,還可以再精簡為:
=VLOOKUP(--LEFT(C3,2),Sheet2!A:B,2,)
最後還應加上防錯判斷,當C3的前兩位不在Sheet2工表作的A列時,公式返回空白值,以上公式返回的是#N/A的錯誤值,公式修改為:
=IF(COUNTIF(Sheet2!A$3:B$36,--LEFT(C3,2)),VLOOKUP(--LEFT(C3,2),Sheet2!A$3:B$36,2,),"")
如果用的是EXCEL 2007及以上版本,防錯公式精簡為:
=IFERROR(VLOOKUP(--LEFT(C3,2),Sheet2!A$3:B$36,2,),"")
EXCEL單元格是以 行+列的形式表示,如A3,則代表A列的第3行所在的單元格,下拉時行會變,橫向拉動時列會變,如果想行或列不變,只需在前面加上絕對引用符號 $ 就行了。如 A$3(行不變) 或 $A3(列不變),或$A$3(行列都不變)。
所以題目中的公式這部份 Sheet2!A4:B37 改為 ,Sheet2!A$4:B$37,完整公式:
=VLOOKUP(--MID(C3,1,2),Sheet2!A$3:B$36,2,0)
以上公式還可以精簡一點點,寫作:
=VLOOKUP(--LEFT(C3,2),Sheet2!A$3:B$36,2,)
如果對整列的引用,還可以再精簡為:
=VLOOKUP(--LEFT(C3,2),Sheet2!A:B,2,)
最後還應加上防錯判斷,當C3的前兩位不在Sheet2工表作的A列時,公式返回空白值,以上公式返回的是#N/A的錯誤值,公式修改為:
=IF(COUNTIF(Sheet2!A$3:B$36,--LEFT(C3,2)),VLOOKUP(--LEFT(C3,2),Sheet2!A$3:B$36,2,),"")
如果用的是EXCEL 2007及以上版本,防錯公式精簡為:
=IFERROR(VLOOKUP(--LEFT(C3,2),Sheet2!A$3:B$36,2,),"")