Excel的函数和公式其实很简单,教你在单元格中巧妙提取文件路径!




  • 深度讲解:如何在单元格中提取当前文件的路径、文件名或工作表?




在单元格中提取当前文件的路径、文件名或工作表

1.提取文件所在的路径

在A1单元格输入公式=CELL("filename")

公式返回结果如图3-13-24所示。

这个公式得到的信息包含了当前工作表的名称,且文件名是用“[]”括起来的。

如果不想要这些信息,只要文件路径名,公式改为:

=SUBSTITUTE(LEFT(CELL("filename"),FIND("]",CELL("filename"))-1),"[","")

公式返回结果如图3-13-25所示。


图3-13-24


图3-13-25

2.提取文件名(含后缀)

方法一:函数与公式

公式如下:

=MID(CELL("filename"),FIND("[",CELL("filename"))+1,FIND("]",CELL("filename"))-FIND("[",CELL("filename"))-1)

公式返回结果如图3-13-26所示。


图3-13-26

方法二:用宏表函数定义名称

单击公式→名称管理器,引用位置输入公式=GET.CELL(66,A1),如图3-13-27所示。


图3-13-27

在A1单元格输入公式=文件名,即可得到图3-13-26结果。

方法三:VBA代码

按组合键【Alt+F11】进入VBE编辑环境,输入以下代码:

Sub宏1()

[A1]=Mid(ThisWorkbook.Name,InStrRev(ThisWorkbook.Name,"")+1)

End Sub

再按F5键执行宏,如图3-13-28所示,A1单元格就出现图3-13-26结果。


图3-13-28

3.提取文件名(不含后缀)

公式如下:

=MID(CELL("filename"),FIND("[",CELL("filename"))+1,FIND(".xls",CELL("filename"))-FIND("[",CELL("filename"))-1)

公式返回结果如图3-13-29所示。

4.提取工作表名称

公式如下:

=RIGHT(CELL("filename",$A$1),LEN(CELL("filename",$A$1))-FIND("]",CELL("filename",$A$1)))

公式返回结果如图3-13-30所示。

5.提取当前文件名和工作表的名称

公式如下:

=RIGHT(CELL("filename"),LEN(CELL("filename"))-MAX(IF(NOT(ISERR(SEARCH("",CELL("filename"),ROW(1:255)))),SEARCH("",CELL("filename"),ROW(1:255)))))

要将公式作为数组公式输入,按组合键【Ctrl+Shift+Enter】。

数组公式返回结果如图3-13-31所示。


图3-13-29


图3-13-30


图3-13-31