使用单元格公式从文件路径获取父文件夹路径

21 浏览
0 Comments

使用单元格公式从文件路径获取父文件夹路径

在列A中,我有20000行带有文件路径的文件名。

\"C:\\person\\microsoft\\ygkyg\\mmddyy\\filename.xls\"

\"\\server-41\\performance\\mmddyy\\filename.doc\"

.....

等等。

在列B中,我只想获取父文件夹路径。

有人可以帮我用公式吗?我尝试过这个,但它给出的是文件名。

=MID(a1,FIND(CHAR(1),
    SUBSTITUTE(a1,"\",CHAR(1),LEN(a1)-LEN(SUBSTITUTE(a1,"\",""))))+1,LEN(a1))

admin 更改状态以发布 2023年5月23日
0
0 Comments

这个有效。

=MID(A1,1,LEN(A1)-LEN(MID(A1,FIND(CHAR(1),SUBSTITUTE(A1,"\",CHAR(1),LEN(A1)-LEN(SUBSTITUTE(A1,"\",""))))+1,LEN(A1))))

以上是我的原始答案。Neil 简化了表达式并在下面发布了这个评论

=LEFT(A1,FIND("?",SUBSTITUTE(A1,"\","?",LEN(A1)-LEN(SUBSTITUTE(A1,"\","")))))

这利用了 ? 是路径中被禁止使用的字符这一事实,因此可以安全地使用 "?" 代替 CHAR(1) 作为 placemark,从而稍微提高可读性。此外,LEFT(A1,x) 相当于并且比 MID(A1,1,x) 更短,所以使用 LEFT 是有意义的。但最重要的是,这个公式使用了 FIND,而不是使用 LEN 进行第二层计算字符数。这使得它更加易读。

0