@王斌 的答案已經寫的很明白了,我再提供一點額外的思路。vlookup ( 已知值,查詢區域,返回值所在列,精確匹配否 ),已知值是用來確定行號的,所在列是確定列號,這個函式的實質就是在一個指定區域返回一個已知值所對應的指定列的值。已知值是在指定區域的第一列進行查詢,第四個引數來控制它的匹配方式,上面那個例子是直接指定一個列號,這裡還可以做得比較靈活一些。也就是將 指定的列號 換為一個 函式 ,形成一個 vlookup 的巢狀函式比如,要返回成績,而不知道成績在那一列,或者那個查詢區域隨時可能加入新列而改變了表結構,此時就是把那個指定列號換為 match ( "成績", sheet2 ! $a$1:$z$1 , 0 ),這樣可以動態的返回一個列號,如果還想再靈活點 那個 "成績",直接換為以引用 標題,這裡做了一個混合引用,列是相當的,行是絕對的,這樣你可以進行填充了,當需要查詢的資訊較多,列和行都不確定時,這麼搞比較方便。vlookup 一個缺點在於,已知值必須位於第一列,這就造成某些時候比較難受,另一個解決思路是用,index ( 查詢區域 , 指定行號 , 指定列號 ) ,兩個指定值都可以是 match 和上面的例子一樣。index 的缺點是跨表查詢時比較噁心,公式會看起來比較長,例如 查詢區域在 D:\001\example_1.xlsx A1:D10跨工作簿引用就會是這個樣子" D:\ 001 \ [example_1.xlsx] sheet1 " ! A1:D10另外 Excel 與其來知乎求救,不如到 Excel Home 潛水學習,更不如把 Excel Home 的教程通讀一遍來的有效。
@王斌 的答案已經寫的很明白了,我再提供一點額外的思路。vlookup ( 已知值,查詢區域,返回值所在列,精確匹配否 ),已知值是用來確定行號的,所在列是確定列號,這個函式的實質就是在一個指定區域返回一個已知值所對應的指定列的值。已知值是在指定區域的第一列進行查詢,第四個引數來控制它的匹配方式,上面那個例子是直接指定一個列號,這裡還可以做得比較靈活一些。也就是將 指定的列號 換為一個 函式 ,形成一個 vlookup 的巢狀函式比如,要返回成績,而不知道成績在那一列,或者那個查詢區域隨時可能加入新列而改變了表結構,此時就是把那個指定列號換為 match ( "成績", sheet2 ! $a$1:$z$1 , 0 ),這樣可以動態的返回一個列號,如果還想再靈活點 那個 "成績",直接換為以引用 標題,這裡做了一個混合引用,列是相當的,行是絕對的,這樣你可以進行填充了,當需要查詢的資訊較多,列和行都不確定時,這麼搞比較方便。vlookup 一個缺點在於,已知值必須位於第一列,這就造成某些時候比較難受,另一個解決思路是用,index ( 查詢區域 , 指定行號 , 指定列號 ) ,兩個指定值都可以是 match 和上面的例子一樣。index 的缺點是跨表查詢時比較噁心,公式會看起來比較長,例如 查詢區域在 D:\001\example_1.xlsx A1:D10跨工作簿引用就會是這個樣子" D:\ 001 \ [example_1.xlsx] sheet1 " ! A1:D10另外 Excel 與其來知乎求救,不如到 Excel Home 潛水學習,更不如把 Excel Home 的教程通讀一遍來的有效。