DROP 函數的作用是從指定的資料範圍中,移除開頭或結尾的特定列數與欄數,並將剩下的資料作為動態陣列傳回。透過正負數的設定,可以決定從資料的頭部或尾部進行移除。
Excel DROP 函數語法
=DROP(陣列, 列數, [欄數])| 參數 | 必填 | 說明 |
|---|---|---|
| 陣列 | 是 | 要從中移除列或欄的資料範圍或陣列。 |
| 列數 | 是 | 要移除的列數。正數表示從上方移除,負數表示從下方移除。若設為 0 則不移除任何列。 |
| 欄數 | 選填 | 要移除的欄數。正數表示從左側移除,負數表示從右側移除。若設為 0 或省略則不移除任何欄。 |
回傳:移除指定列數或欄數後剩餘的資料陣列。
適用版本:Microsoft 365、Excel 網頁版適用。
DROP 函數範例
範例 1:移除表頭
取得不含表頭的業績資料
| 姓名 | 業績 |
|---|---|
| 王小明 | 100 |
| 陳怡君 | 200 |
在 D1 輸入公式:
=DROP(A1:B3, 1)結果:王小明。列數設定為 1,代表移除範圍 A1:B3 的第 1 列(表頭)。公式結果會溢出顯示兩列兩欄的資料,左上角第一格為王小明。
範例 2:移除底部的總計列
取得不含底部總計的產品數量
| 產品 | 數量 |
|---|---|
| 蘋果 | 10 |
| 香蕉 | 20 |
| 總計 | 30 |
在 D1 輸入公式:
=DROP(A1:B4, -1)結果:產品。列數設定為 -1,代表從範圍底部移除 1 列(總計列)。公式結果會溢出傳回前三列的資料,左上角第一格為產品。
範例 3:同時移除表頭與第一欄
去除序號與表頭,只保留姓名與分數
| 序號 | 姓名 | 分數 |
|---|---|---|
| 1 | 王小明 | 90 |
| 2 | 陳怡君 | 85 |
在 E1 輸入公式:
=DROP(A1:C3, 1, 1)結果:王小明。列數設定為 1 移除表頭,欄數設定為 1 移除最左側的序號欄。公式結果會溢出顯示剩下的姓名與分數資料,左上角第一格為王小明。
使用 DROP 的技巧與注意事項
- 若只需要移除欄而不移除列,可以將列數參數設定為 0 或直接留空,例如 =DROP(A1:C5, 0, 1) 或 =DROP(A1:C5, , 1)。
- DROP 函數經常與 SORT 或 FILTER 函數搭配使用,可以在排序或篩選後快速去除不需要的表頭或加總列。
- 傳回的結果是動態陣列,會自動溢出到相鄰的空白儲存格,請確保公式右下方有足夠的空白空間,以免出現 #SPILL! 錯誤。
DROP 常見錯誤與解決方法
| 錯誤 | 原因 | 解決方法 |
|---|---|---|
| #CALC! | 移除的列數或欄數大於或等於原始陣列的總列數或總欄數,導致沒有剩餘資料可以傳回。 | 檢查列數與欄數的設定,確保其絕對值小於原始資料的總列數與總欄數。 |
| #VALUE! | 列數或欄數參數輸入了非數值的文字。 | 確認列數與欄數參數皆為整數數值。 |
Google 試算表可以用 DROP 嗎?
目前 Google 試算表尚未支援 DROP 函數,若需達到類似效果,可改用 FILTER 等函數來處理。
下載 DROP 範例檔
上面的範例都整理在這個檔案裡,每個範例一個工作表,黃色格子是公式,可以直接改資料看結果變化:DROP 範例.xlsx(範例公式的結果經過兩個模型交叉核對)。
常見問題
DROP 和 TAKE 函數有什麼不同?
DROP 是用來「移除」指定的列數或欄數,並傳回剩下的資料;TAKE 則是「保留」指定的列數或欄數,兩者作用剛好相反。
可以只移除欄而不移除列嗎?
可以。若只要移除欄,可以將列數參數設定為 0 或省略,例如 =DROP(A1:C5, 0, 1) 或 =DROP(A1:C5, , 1),即可只移除指定的欄數。
為什麼公式結果會出現 #CALC! 錯誤?
當指定的移除列數或欄數等於或大於原始資料的總列數或總欄數時,因為沒有剩餘的資料可以顯示,Excel 就會傳回 #CALC! 錯誤。
這篇收錄在「Excel 函數字典」。




