Excel VBA公式:从文件path中提取文件扩展名?

给定一个包含文件path的excel列,什么excel公式只返回文件扩展名?

src\main\java\com\something\proj\UI.java – > java src\main\java\com\something\proj\Server.scala – > scala src\main\java\com\something\proj\include.h\someinclude.hpp – > hpp

注1:此公式对于只有一个句点的文件path有效,但对于情况3不适用:
=IF(A1="","",RIGHT(A1,LEN(A1)-FIND(".",A1)))

注2:我知道这些文件path是Windows特定的,我不需要跨平台的解决scheme。

相关: 从文件名在Excel中修剪扩展和如何从path中提取文件名?

这将会在最后find一切.

 =MID(A1,FIND("{{{",SUBSTITUTE(A1,".","{{{",LEN(A1)-LEN(SUBSTITUTE(A1,".",""))))+1,LEN(A1)) 

在这里输入图像说明

使用A1中的数据,使用:

 =SUBSTITUTE(RIGHT(SUBSTITUTE(A1,".",REPT(".",999)),999),".","") 

在这里输入图像说明

从:

吉姆·康的旧post

这是一个很好的答案。 🙂

 =SUBSTITUTE(A1,LEFT(A1,FIND(CHAR(1),SUBSTITUTE(A1,".",CHAR(1),LEN(A1)-LEN(SUBSTITUTE(A1,".",""))))),"")