在 Excel 中從路徑提取檔名
本教學將說明如何運用公式,從 Excel 特定儲存格中的檔案路徑提取檔名,可選擇保留或移除副檔名。

從路徑提取含副檔名的檔名
如下方截圖所示,清單中包含多個不同的檔案路徑;若您僅想從中提取含有副檔名的檔名,以下公式可協助您輕鬆達成此目標。

通用公式
=MID(A1,FIND("*",SUBSTITUTE(A1,"\","*",LEN(A1)-LEN(SUBSTITUTE(A1,"\",""))))+1,LEN(A1))
引數
A1:代表包含您要提取檔名之檔案路徑的儲存格。
如何使用這個公式?
1. 選取一個空白儲存格來輸出檔名;在此範例中,我選擇了儲存格 D3.
2. 在儲存格中輸入下方公式,然後按下 Enter 鍵;選取結果儲存格後,向下拖曳填滿控點,即可快速套用至其他儲存格!
=MID(B3,FIND("*",SUBSTITUTE(B3,"\","*",LEN(B3)-LEN(SUBSTITUTE(B3,"\",""))))+1,LEN(B3))

現在,特定檔案路徑中所有帶有副檔名的檔名均已成功提取,如上方截圖所示。
注意事項:
- 在此公式中,B3 為包含檔案路徑的儲存格,請依需求調整。
- 若檔名長度不超過 99 個字元,亦可採用下方更簡潔的公式來解決此問題,詳情請參見下列截圖。
=TRIM(RIGHT(SUBSTITUTE(A2,"\",REPT(" ",100)),99))
此公式是如何運作的?
=MID(B3,FIND("*",SUBSTITUTE(B3,"\","*",LEN(B3)-LEN(SUBSTITUTE(B3,"\",""))))+1,LEN(B3))
1. FIND("*",SUBSTITUTE(B3,"\","*",LEN(B3)-LEN(SUBSTITUTE(B3,"\",""))))
- LEN(B3):LEN 函數計算「D:\\files\work\Q1\Jan\text.txt」的總長度,並傳回結果 30;
- LEN(SUBSTITUTE(B3,"\",""))SUBSTITUTE 函數將字元「\」替換為空值,得到「D:filesworkQ 1Jantext.txt」;接著,LEN 函數計算該字串的總長度,結果為 24.
- SUBSTITUTE(B3,"\","*",30-24)SUBSTITUTE 函數將「D:\\files\work\Q1\Jan\text.txt」中的第三個反斜線(30-24=6)替換為單一字元「*」,結果為「D:\\files\work\Q1\Jan*text.txt」。
- FIND("*","D:\\files\work\Q1\Jan*text.txt")FIND 函數找出「D:\\files\work\Q1\Jan*text.txt」中字元「*」的位置,並傳回 22,表示該字元位於路徑字串的第 22 個位置。
2. =MID(B3,22+1,LEN(B3))
- 如上所述,LEN(B3) 傳回結果 30,因此 MID 函數可表示為 =MID(“D:\\files\work\Q1\Jan\text.txt“, 【【PH_34]】)。這表示 MID 函數從字串「D:\\files\work\Q1\Jan\text.txt」的第 23 個字元開始,提取 30 個字元,結果即為 text.txt。
從路徑提取不含副檔名的檔名
另一種情況是,您可能只需要從路徑中提取不含副檔名的檔案名稱,如下方截圖所示。本節將提供一個較長的公式,協助您達成此目的。

通用公式
=IFERROR(MID(A1,FIND(CHAR(1),SUBSTITUTE(A1,"\",CHAR(1),LEN(A1)-LEN(SUBSTITUTE(A1,"\",""))))+1,FIND(CHAR(1),SUBSTITUTE(A1,".",CHAR(1),LEN(A1)-LEN(SUBSTITUTE(A1,".",""))))-FIND(CHAR(1),SUBSTITUTE(A1,"\",CHAR(1),LEN(A1)-LEN(SUBSTITUTE(A1,"\",""))))-1),"")
引數
A1:代表包含您要從中提取檔名之檔案路徑的儲存格。
CHAR(1):此處的 CHAR(1) 可依需求替換為任意 CHAR 數值,或以引號括起的特定符號(例如「*」)取代。
如何使用這個公式?
1. 選取一個空白儲存格,用來輸出不含副檔名的檔名。
2. 在其中輸入下方公式,然後按下 Enter 鍵。選取結果儲存格,再向下拖曳其填滿控點以套用至其他儲存格。
=IFERROR(MID(B4,FIND(CHAR(1),SUBSTITUTE(B4,"\",CHAR(1),LEN(B4)-LEN(SUBSTITUTE(B4,"\",""))))+1,FIND(CHAR(1),SUBSTITUTE(B4,".",CHAR(1),LEN(B4)-LEN(SUBSTITUTE(B4,".",""))))-FIND(CHAR(1),SUBSTITUTE(B4,"\",CHAR(1),LEN(B4)-LEN(SUBSTITUTE(B4,"\",""))))-1),"")

注意:此公式中的 B3 為包含檔案路徑的儲存格,請依需求調整。
相關函數
Excel MID 函數
Excel MID 函數可從指定文字字串的中間位置,精準提取並傳回特定數量的字元,輕鬆掌握資料處理關鍵技巧!
Excel FIND 函數
Excel SUBSTITUTE 函數
Excel SUBSTITUTE 函數可用來將文字字串中的指定文字或字元,輕鬆替換為其他文字或字元!
Excel LEN 函數
Excel LEN 函數可傳回文字字串中的字元數。
Excel IFERROR 函數
IFERROR 函數可在公式計算出錯時回傳您自訂的結果;若無錯誤,則回傳正常計算值。
相關公式
從儲存格中提取多行文字
若您有一份以換行符號(輸入文字時按 Alt + ENTER 鍵產生)分隔的文字清單,並希望將各行文字分別提取至多個儲存格中,本教學提供的公式可助您輕鬆達成此目的!
從多行儲存格中提取最後一行文字
若要從以換行符號分隔的文字字串中提取最後一行,本教學提供的公式可協助您輕鬆在 Excel 中完成此任務!
在 Excel 中提取文字字串的第 N 個單字
本文說明如何運用公式,輕鬆從 Excel 儲存格的文字字串中提取指定的第 N 個單字!
在 Excel 中提取儲存格的最後兩個單字
本教學說明如何使用公式,輕鬆從 Excel 儲存格中提取最後兩個單字!
在 Excel 中提取以特定字元開頭的單字
本教學提供詳細步驟與實用公式,協助您輕鬆從 Excel 儲存格的文字字串中提取以特定字元開頭的單字!
提取除第一個或最後一個以外的所有單字
在本教學中,您將學會如何運用公式從儲存格中提取所有單字,唯獨排除第一個或最後一個。
最佳 Office 生產力工具
Kutools for Excel -助您脫穎而出
| 🤖 | KUTOOLS AI 助手:以以下方式革新數據分析:智慧執行 | 產生程式碼| 建立自訂公式 | 分析資料並產生圖表| 呼叫增強函數…… |
| 熱門功能:尋找、標示或標記重複值 | 刪除空白行 | 合併列或儲存格而不遺失資料 | 不使用公式的四捨五入…… | |
| 超級 VLookup:多重條件 | 多重值 | 跨多個工作表 | 模糊查找…… | |
| 進階下拉列表:簡易下拉式清單 | 相依下拉式清單 | 多選下拉式清單…… | |
| 欄位管理員:新增指定數量的欄位 | 移動欄位 | 切換隱藏欄位的可見狀態 |比較欄位以選擇相同/不同單元格…… | |
| 精選功能:網格聚焦 | 設計視圖 | 增強編輯欄 | 工作簿與工作表管理員|資源庫(自動文字)| 日期提取 | 合併工作表 | 加密/解密儲存格 | 依清單傳送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體儲存格/斜體/刪除線……) ...... | |
| 頂尖 15 工具組:12 文字工具(添加文本,刪除特定字符……)| 50+ 圖表 類型(甘特圖……)| 40+ 實用公式(基於生日計算年齡……)| 19 插入工具(插入二維碼,從路徑插入圖片……)| 12 轉換工具(金額轉大寫,匯率轉換……)| 7 合併和拆分工具(高級合併行,拆分 Excel 儲存格……)|……還有更多 |
Kutools for Excel 擁有超過 300 項功能,確保您所需的功能僅需一鍵即可取得……
Office Tab -在 Microsoft Office(包含 Excel)中啟用分頁式閱讀與編輯
- 一秒內在數十份開啟的文件間快速切換!
- 每天為您減少數百次滑鼠點擊,遠離滑鼠手困擾。
- 在檢視與編輯多份文件時,讓您的生產力提升高達 50%。
- 為 Office(包含 Excel)帶來如 Chrome、Edge 與 Firefox 般的高效能分頁體驗。
