跳至主要内容

从路径中提取文件名(Excel)

Author: Siluvia Last Modified: 2025-05-07

本教程将介绍如何使用公式从Excel特定单元格中的文件路径提取带扩展名或不带扩展名的文件名。

doc-extract-filename-frompath-1

从路径中提取带扩展名的文件名
从路径中提取不带扩展名的文件名


从路径中提取带扩展名的文件名

如下截图所示,有一个包含不同文件路径的列表,您希望仅提取其中带有扩展名的文件名,以下公式可以帮助您解决此问题。

doc-extract-filename-frompath-2

通用公式

=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))

doc-extract-filename-frompath-3

现在,所有特定文件路径中的带扩展名的文件名都已提取,如上面的截图所示。

注意事项:

  • 在此公式中,B3是包含文件路径的单元格,请根据需要更改。
  • 如果文件名不超过99个字符,则可以使用以下更短的公式来解决问题,如下面的截图所示。
    =TRIM(RIGHT(SUBSTITUTE(A2,"\",REPT(" ",100)),99))
    doc-extract-filename-frompath-4

此公式的工作原理是什么?

=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:filesworkQ1Jantext.txt”。然后LEN函数计算“D:filesworkQ1Jantext.txt”的总长度并得到结果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。这意味着字符“*”位于“D:\files\work\Q1\Jan*text.txt”的第22位。

2. =MID(B3,22+1,LEN(B3))

  • 如上所述,LEN(B3)返回结果为30,因此MID函数可表示为=MID("D:\files\work\Q1\Jan\text.txt",23,30)。这意味着MID函数从字符串“D:\files\work\Q1\Jan\text.txt”中提取30个字符,从第23个字符开始。这里的结果是text.txt。

从路径中提取不带扩展名的文件名

另一种情况是,您可能只需要从路径中提取不带扩展名的文件名,如下截图所示。本节将提供一个较长的公式帮助您完成此操作。

doc-extract-filename-frompath-5

通用公式

=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),"")

doc-extract-filename-frompath-6

注意:在此公式中,B3是包含文件路径的单元格,请根据需要更改。


相关函数

Excel MID函数 Excel MID函数用于从给定文本字符串的中间查找并返回指定数量的字符。

Excel FIND函数 Excel FIND函数用于在一个字符串内查找另一个字符串,并返回该字符串在另一个字符串内的起始位置。

Excel SUBSTITUTE函数 Excel SUBSTITUTE函数用于用另一个文本或字符替换文本字符串中的文本或字符。

Excel LEN函数 Excel LEN函数返回文本字符串中的字符数。

Excel IFERROR函数 IFERROR函数用于当公式计算出错误时返回自定义结果,而在没有发生错误时返回正常结果。


相关公式

从单元格中提取多行 如果您有一系列由换行符分隔的文本字符串(通过按下Alt + Enter键输入文本时产生),并且希望将这些文本行提取到多个单元格中,本教程中的公式将为您提供帮助。

从多行单元格中提取最后一行文本 要从由换行符分隔的文本字符串中提取最后一行文本,本教程中的公式可以帮助您在Excel中处理此任务。

从Excel中的文本字符串提取第N个单词 本文解释了如何使用公式从Excel单元格中的文本字符串提取特定的第N个单词。

从Excel单元格中提取最后两个单词 本教程解释了如何使用公式从Excel单元格中提取最后两个单词。

从Excel中的文本字符串提取以特定字符开头的单词 本教程提供了一个详细步骤的公式,帮助您从Excel单元格中的文本字符串提取以特定字符开头的单词。

提取除第一个或最后一个以外的所有单词 在本教程中,您将学习如何使用公式提取单元格中的所有单词,但第一个或最后一个除外。


最佳的办公生产力工具

Kutools for Excel - 助您脱颖而出

🤖 Kutools AI 助手:基于以下功能彻底改变数据分析方式:智能执行   |  生成代码  |  创建自定义公式  |  分析数据并生成图表  |  调用Kutools函数
热门功能查找、高亮或标记重复项  |  删除空行  |  合并列或单元格而不丢失数据  |  四舍五入无需公式 ...
超级VLookup多条件  |  多值  |  跨多个工作表  |  模糊查找...
高级下拉列表简易下拉列表  |  级联下拉列表  |  多选下拉列表...
列管理器添加指定数量的列  |  移动列  |  切换隐藏列的可见状态  比较列以 选择相同和不同的单元格 ...
精选功能网格聚焦  |  设计视图  |  增强编辑栏  |  工作簿与工作表管理器 | 资源库(自动文本)  |  日期提取  |  合并数据  |  加密/解密单元格  |  按列表发送电子邮件  |  超级筛选  |  特殊筛选(筛选粗体/斜体/删除线...) ...
排名前15的工具集12个 文本 工具添加文本删除特定字符 ...)  |  50多种 图表 类型甘特图 ...)  |  40多种实用 公式基于生日计算年龄 ...)  |  19个 插入 工具插入二维码从路径插入图片 ...)  |  12个 转换 工具小写金额转大写汇率转换 ...)  |  7个 合并与拆分 工具高级合并行分割Excel单元格 ...)  |  ... 还有更多

Kutools for Excel拥有超过300种功能,确保您需要的功能只需一键即可实现...


Office Tab - 在Microsoft Office(包括Excel)中启用标签式阅读和编辑

  • 一秒内切换数十个打开的文档!
  • 每天为您减少数百次鼠标点击,告别鼠标手。
  • 在查看和编辑多个文档时,您的工作效率将提高50%。
  • 为Office(包括Excel)带来高效的标签页,就像Chrome、Edge和Firefox一样。