OFFSET 是 EXCEL 中的常用函數之一,用於回傳一個範圍或一個儲存格的資料。特別適合在需要動態引用資料範圍或進行數據分析時使用。
本文將會用 5 分鐘的時間,教你 OFFSET 函數的基本用法、進階應用,以及常見錯誤提示。
那麼我們就開始吧!
OFFSET 函數用法
OFFSET 函數用於回傳一個範圍或一個儲存格的資料,以下是 OFFSET 函數的語法:
=OFFSET(reference,rows,cols,[height],[width])
引數名稱 | 解釋 |
---|---|
reference | 參考點 |
rows | 往下數幾列 |
cols | 往右數幾欄 |
[height] | 回傳資料列數 |
[width] | 回傳資料欄數 |
接著,我們來看看 OFFSET 函數的使用範例。
使用範例 1:OFFSET 回傳單一儲存格
如果 OFFSET 函數要回傳單一儲存格,回傳資料列數與欄數則不需要輸入。
使用範例:利用 OFFSET 函數回傳單一儲存格回傳 IT 部門在 Q3 的開銷:
=OFFSET(A1,4,3)
引數名稱 | 解釋 | 範例 |
---|---|---|
reference | 參考點 | A1 |
rows | 往下數幾列 | 4(A1 往下 4 列至 A5) |
cols | 往右數幾欄 | 3(A5 往右 3 欄至 D5) |
[height] | 回傳資料列數 | 回傳單一儲存格,不需輸入 |
[width] | 回傳資料欄數 | 回傳單一儲存格,不需輸入 |
另外,當引數中的 rows 與 cols 輸入負數,代表往反方向數列數與欄數:
=OFFSET(E6,-1,-1)
引數名稱 | 解釋 | 範例 |
---|---|---|
reference | 參考點 | E6 |
rows | 往下數幾列 | -1(E6 往上 1 列至 E5) |
cols | 往右數幾欄 | -1(E5 往左 1 欄至 D5) |
[height] | 回傳資料列數 | 回傳單一儲存格,不需輸入 |
[width] | 回傳資料欄數 | 回傳單一儲存格,不需輸入 |
但輸入負數會讓資料變得更複雜,而且也沒那麼直觀,因此建議非必要還是盡量讓 rows 與 cols 保持正數。
使用範例 2:OFFSET 回傳範圍儲存格
如果要回傳範圍儲存格,那麼回傳資料列數與欄數都需要輸入值。
使用範例:利用 OFFSET 函數回傳 IT、財務部門在 Q3 與 Q4 的開銷:
=OFFSET(A1,4,3,2,2)
引數名稱 | 解釋 | 範例 |
---|---|---|
reference | 參考點 | A1 |
rows | 往下數幾列 | 4(A1 往下 4 列至 A5) |
cols | 往右數幾欄 | 3(A5 往右 3 欄至 D5) |
[height] | 回傳資料列數 | 2(回傳 2 列) |
[width] | 回傳資料欄數 | 2(回傳 2 欄) |
使用範例:利用 OFFSET 函數回傳業務、行銷、人資部門在 Q1 與 Q2 的開銷:
=OFFSET(A1,1,1,3,2)
OFFSET 進階用法 – 結合 SUM 函數計算範圍總和
在前面的範例中,我們已經抓出業務、行銷、人資部門在 Q1 與 Q2 的開銷了。
接下來,便可以用 SUM 函數計算 OFFSET 函數回傳的總和:
=SUM(OFFSET(A1,1,1,3,2))
OFFSET 常見錯誤
- #VALUE!:當 OFFSET 中有任何一個引數不是數字時,就會返回 #N/A 錯誤。
- #REF!:如果引用的儲存格無效(如引用了一個已被刪除的範圍),Excel 就會顯示 #REF! 錯誤。
- #NAME?:通常是由於函數名稱拼寫錯誤造成的(如將 OFFSET 打錯成了 OFSET)