Excel公式返回工作表名称是什么?

Sil*_*ilS 12 excel-formula excel-2013

我搜索了excel函数文档和一般MSDN搜索,但一直无法找到一种方法来返回没有VBA的工作表名称.

有没有办法在excel公式中获取工作表名称而无需诉诸VBA?

Tra*_*vis 13

excel不是很好,但我在这里找到了这些

=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,256)
Run Code Online (Sandbox Code Playgroud)

并且A1可以是工作表中的任何非错误单元格.
有关工作表的完整路径和名称,请使用

=CELL("filename",A1)
Run Code Online (Sandbox Code Playgroud)

  • 我认为我很聪明,省略了“,A1”,并将“256”更改为“255”,但这有一个错误,如果从另一张工作表重新计算工作簿,它就不起作用:在这种情况下它的值始终是活动工作表的名称。 (3认同)

pgS*_*ter 7

这是一个相当短的,有几个额外的好处:

  • 使用经常被忽略的REPT函数进行反向查找(大多数其他答案都出错了)。

  • A1似乎是一个糟糕的选择,因为errors与...相比,它的机会要高得多$FZZ$999999

  • 不要忘记绝对。由于引用更改,复制和粘贴一些其他示例可能会出错。

  • ?是故意的,因为它不应该在文件路径中。

    =SUBSTITUTE(RIGHT(SUBSTITUTE(CELL("Filename",$FZZ$999999), 
    "]",REPT("?", 999)), 999),"?","")
    
    Run Code Online (Sandbox Code Playgroud)