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

Han*_*ana 6 excel worksheet-function

在列AI中有20000行,文件名带文件路径

"C:\人\微软\ ygkyg\MMDDYY\filename.xls"
"\服务器41 \性能\ MMDDYY\filename.doc"
......
等等.

在列BI中,我只想获取父文件夹路径.

有人可以帮我配方奶粉吗?我尝试了这个,但它给了我文件名.

=MID(a1,FIND(CHAR(1),
    SUBSTITUTE(a1,"\",CHAR(1),LEN(a1)-LEN(SUBSTITUTE(a1,"\",""))))+1,LEN(a1))
Run Code Online (Sandbox Code Playgroud)

Jea*_*ett 23

这有效.

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

以上是我原来的答案.尼尔在某种程度上简化了表达,并将其作为评论发布如下:

=LEFT(A1,FIND("?",SUBSTITUTE(A1,"\","?",LEN(A1)-LEN(SUBSTITUTE(A1,"\","")))))
Run Code Online (Sandbox Code Playgroud)

这利用了?路径中的禁止字符这一事实,因此"?"可以安全地使用而不是CHAR(1)作为地标,从而提高了可读性.此外,LEFT(A1,x)相当于,并且更短MID(A1,1,x),因此使用起来是有意义的LEFT.但最重要的是,这个公式使用了FIND,而不是使用第二层计数字符LEN.这使得很多更具可读性.

  • 稍微简化:`= LEFT(A1,FIND("?",SUBSTITUTE(A1,"\","?",LEN(A1)-LEN(SUBSTITUTE(A1,"\",""))))) (请注意,这包括尾部反斜杠) (3认同)