在Excel中从文件名修剪扩展

我有这个公式。 这个工作很好,但有5个字符包括点时失败。

例如,

abcdefgh.pdf = TRIM(LEFT(A1,LEN(A1)-4))给了我abcdefgh xyz.xlsx = TRIM(LEFT(A2,LEN(A2)-4))给了我xyz。

是否有一个公式,寻找最后一个点,并修整最后一个点后的一切?

尝试使用这个公式来摆脱最后一个点和之后的一切

=LEFT(A1,LOOKUP(2^15,FIND(".",A1,ROW(INDIRECT("1:"&LEN(A1)))))-1)

如果根据你的例子只有一个点,那么你只需要

=LEFT(A1,FIND(".",A1)-1)

这个公式运作良好

 =TRIM(RIGHT(SUBSTITUTE(A1,".",REPT(" ",100)),100)) 

它用100个空格replace每个句点,然后返回正确的100个字符并修剪它。 您也可以replace“。” 用“\”来获取文件名。

在excelforum.com上感谢NBVC

可以尝试下面的公式。

 =SUBSTITUTE(A1,"."& RIGHT(A1,LEN(A1)-FIND("|",SUBSTITUTE(A1,".","|",LEN(A1)-LEN(SUBSTITUTE(A1,".",""))))),"") 

这适用于具有2到7个字符文件扩展名的文件扩展名,文件名中包含完整path和名称空间表示法。

你也可以使用

 =RIGHT(A1,LEN(A1)-FIND("|",SUBSTITUTE(A1,".","|",LEN(A1)-LEN(SUBSTITUTE(A1,".",""))))) 

find文件的扩展名。