有时我们遇到需要从excel文件中的文件路径中提取文件名的实例。我们可能拥有完整的文件路径列表,并且只希望每个文件都带有扩展名。手动执行此操作很麻烦。我们可以很容易地使用excel公式执行此操作。

考虑到您在A列中有文件名列表,

img1

而且,您只想提取具有自己扩展名的文件名,然后使用以下公式–

img2

我们将得到的输出为–

img3

|因此,无论文件路径有多长,我们仍然将输出作为文件名。现在让我们理解这个公式–因此该公式将尝试评估MID函数,并且该函数的每个参数都将使用其他函数来完成。 MID函数的语法为_ = MID(text,start_num,num_chars)。_现在让我们看看公式的其余部分如何适合– = MID(A2,FIND(“”,SUBSTITUTE(A2,“ \”,“ “,LEN(A2)-LEN(SUBSTITUTE(A2,” \“,”“)))))+ 1,LEN(A2))

首先评估Len(A2),这给我们整个字符串的长度等于19。

MID(A2,FIND(“”,SUBSTITUTE(A2,“ \”,“”,LEN(A2)-LEN(SUBSTITUTE(A2,“ \”,“”))))+ 1,LEN(A2))

接下来评估LEN(SUBSTITUTE(A2,“ \”,“”))。替代函数会将所有\替换为空白,而len函数将计算其长度等于17。

因此LEN(A2)-LEN(SUBSTITUTE(A2,“ \”,“”))将给我们2。

现在我们的函数看起来像= MID(A2,FIND(“”,SUBSTITUTE(A2,“ \”,“”,2))+ 1,LEN(A2))

下一个要评估的部分如下所示= MID(A2,FIND(“”,SUBSTITUTE(A2,“ \”,“”,2))+ 1,LEN(A2))

从“ \”的2 ^ nd ^实例开始,替代函数会将\替换为。因此,我们的函数现在看起来像= MID(“ B:\ Files \ File1.xlsx”,FIND(“”,“ B:\ Files * File1.xlsx”)+ 1,LEN(A2))

下一个要评估的部分是查找函数-= MID(“ B:\ Files \ File1.xlsx”,FIND(“”,“ B:\ FilesFile1.xlsx”)+ 1,LEN(A2))

这使我们的输出为9 + 1 = 10(+1是排除计数中的*)。

现在,我们的函数看起来像= MID(“ B:\ Files \ File1.xlsx”,10,19)。因此,我们将范围缩小到MID函数,该函数将从字符串“ B:\ Files \ File1.xlsx”中的第10个字符开始为19个字符。我们将输出作为File1.xlsx。

这是多功能公式的工作方式,并为您提供输出。