Excel 公式从文件名中提取路径
如果您需要从完整路径和文件名中提取路径,可以通过组合使用 LEFT、FIND、SUBSTITUTE 和 LEN 函数来实现。尽管公式较为复杂,但本教程将为您详细解析其实现逻辑。
通用公式:
| LEFT()path,FIND("?",SUBSTITUTE())path,"\","?",LEN()path)-LEN(SUBSTITUTE()path,“\“,““))))) |
参数
| Path: the cell reference or text string contains file path and file name. |
公式原理说明
以提取 B3 单元格中的路径为例,单元格包含完整路径和文件名,请使用以下公式:
| =LEFT(B3,FIND("?",SUBSTITUTE(B3,"\","?",LEN(B3)-LEN(SUBSTITUTE(B3,"\",""))))) |
按下 Enter 键,即可从单元格中快速提取路径。
公式详解
要从完整路径和文件名中提取路径,首先,公式利用 LEN 和 SUBSTITUTE 函数统计“\”字符的总数;接着,通过 SUBSTITUTE 函数将最后一个“\”替换为特殊字符“?”;最后,借助 FIND 和 LEFT 函数定位特殊字符“?”并提取出路径部分。
LEN函数可返回文本字符串中的字符数。
SUBSTITUTE函数可将旧文本替换为新内容。
公式 LEN(B3)-LEN(SUBSTITUTE(B3,"\","")) 可用于统计字符 “\“ 的出现次数。
| =LEN(B3)-LEN(SUBSTITUTE(B3,"\","")) =LEN(B3)-LEN(“C:UsersAddinTestWin 10Documentsdescription.xlsx”) 50-46 =4 |

SUBSTITUTE(B3,"\","?",LEN(B3)-LEN(SUBSTITUTE(B3,"\",""))) 可将第四个“\”替换为“?”
| =SUBSTITUTE(B3,"\","?",LEN(B3)-LEN(SUBSTITUTE(B3,"\",""))) =SUBSTITUTE(B3,"\","?",4) =C:\Users\AddinTestWin 10\Documents?description.xlsx |

FIND函数可用于在字符串中查找另一个字符串,并返回其在其中的起始位置。
公式 FIND("?",SUBSTITUTE(B3,"\","?",LEN(B3)-LEN(SUBSTITUTE(B3,"\","")))) 可用于查找文本字符串 "C:\Users\AddinTestWin 10\Documents?description.xlsx“ 中“?”的位置。
| =FIND("?",SUBSTITUTE(B3,"\","?",LEN(B3)-LEN(SUBSTITUTE(B3,"\","")))) =FIND("?","C:\Users\AddinTestWin 10\Documents?description.xlsx") =34 |

LEFT函数可从指定文本的左侧提取固定长度的子字符串。
| =LEFT(B3,FIND("?",SUBSTITUTE(B3,"\","?",LEN(B3)-LEN(SUBSTITUTE(B3,"\",""))))) =LEFT(B3,34) =C:\Users\AddinTestWin 10\Documents\ |

示例文件
相关公式
- 从右侧提取至指定字符
本节将介绍如何通过公式,从给定文本的右侧提取到指定字符处的内容。 - 从文件名中提取扩展名
本节将介绍如何使用公式从文件名中提取扩展名,并将其输出到其他列。 - 从路径中提取文件名
本节将为您讲解如何通过公式,从包含文件路径的单元格中提取带扩展名或不带扩展名的文件名(适用于 Excel)。 - 为电话号码添加连字符
在 Excel 中,您可以通过公式轻松为电话号码添加连字符。
- LEFT 函数
用于从文本左侧提取子字符串。 - SUBSTITUTE 函数
可将指定的查找和替换文本字符串替换为其他字符串。 - LEN 函数
轻松获取文本中的字符数。 - SEARCH 函数
用于查找指定字符或子字符串在给定文本中的位置。 - FIND 函数
在字符串中查找另一字符串
这款最佳办公效率工具
Kutools for Excel —— 助您脱颖而出
| 🤖 | KUTOOLS AI 助手:基于数据分析的变革创新智能执行 | 生成代码| 创建自定义公式 | 数据分析及生成图表| 调用 Kutools Functions…… |
| 热门功能:查找、高亮显示或标记重复项 | 删除空白行 | 合并列或单元格且不丢失数据 | 不使用公式的四舍五入…… | |
| 超级 VLookup:多条件查询 | 多值返回 | 跨多工作表 | 模糊查找…… | |
| 高级下拉列表:轻松下拉列表 | 依赖下拉列表 | 多选下拉列表…… | |
| 列管理器:添加指定数量的列 | 移动列 | 切换隐藏列的显示状态 |比较列与选择相同/不同单元格…… | |
| 特色功能:网格聚焦 | 设计视图 | 增强编辑栏 | 工作簿和表管理器|资源库(自动文本)| 日期提取 | 汇总工作表 | 加密/解密单元格 | 按列表群发邮件 | 超级筛选 | 特殊筛选(筛选粗体单元格/斜体/删除线……) ...... | |
| 顶级 15 工具组:12 文本工具(添加文本,删除特定字符……)| 50+ 图表 类型(甘特图……)| 40+ 实用公式(基于生日计算年龄……)| 19 插入工具(插入二维码,按路径插入图片……)| 12 转换工具(小写金额转大写,汇率转换……)| 7 合并和拆分工具(高级合并行,拆分 Excel 单元格……)|……以及更多 |
Kutools for Excel 拥有超过 300 项功能,让您的需求一键轻松实现……
Office Tab —— 让 Microsoft Office(包括 Excel)支持标签式阅读与编辑
- 一秒即可切换数十个已打开的文档!
- 每天为您减少上百次鼠标点击,轻松告别鼠标手困扰。
- 查看和编辑多个文档时,工作效率提升 50%。
- 为 Office(包括 Excel)引入高效标签页,让您同样畅享如 Chrome、Edge 和 Firefox 般的便捷体验。