Microsoft Lab
Excel / Get Sheet Name 取得工作表名称
Worksheets第 7 课

Get Sheet Name 取得工作表名称

⏱ 8 分钟🔵 进阶先学过:文本函数 EP01 左右中

When什么时候用得到

做报表标题时,你想让标题自动显示「当前工作表:North」,工作表改名,标题也跟着变。

Excel 没有专门取工作表名称的函数,要用 CELL、FIND、MID 三个函数拼出来。

What这是什么

CELL("filename", A1) — 返回「文件路径 + [工作簿名称] + 工作表名称」一整串文字。

FIND — 在文字里找某个字符的位置。

MID — 从文字中间截取一段。

& — 把文字接在一起。

函数语法用途例子
CELL=CELL("filename", reference)取得完整路径信息=CELL("filename",A1)
FIND=FIND(find_text, within_text)找字符位置=FIND("]",CELL("filename",A1))+1
MID=MID(text, start_num, num_chars)截取子字符串见下方

How一步一步做

工作表名称排在 ] 后面,所以:先取整串,找到 ],再截取后面的部分。

  1. 1

    取得完整信息

    =CELL("filename",A1)。A1 可换成任意格子,取到的是它所在工作表的名称。

  2. 2

    找到名称开始的位置

    =FIND("]",CELL("filename",A1))+1。找 ] 的位置,再加 1,就是名称的第一个字。

  3. 3

    用 MID 截取名称

    工作表名称最长 31 个字符,长度直接填 31,多截也不会错。

  4. 4

    加上自己的文字

    用 & 把文字接上去。

完整公式:

=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,31)

加上文字:

="当前工作表:"&MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,31)

想取其他工作表的名称,把 A1 换成那个工作表上的任意格子,例如 Sheet2 上的格子,就取到 "Sheet2"。

❌ 文件还没保存就用:返回空白,后面出错。

❌ MID 的长度填太小:名称被截断。

❌ 想取别的工作表名,却没换成那个表的格子引用。

Why为什么这样做

✅ 名称自动跟着工作表改,不用手动更新标题。

⚠️ 文件必须先保存过一次。没保存的文件没有路径,CELL("filename") 会返回空白,后面的 FIND、MID 都会出错。

Sources

Blog / Website:

  1. Get Sheet Name
Basics · Worksheets · 第 7 课 ← View Multiple Worksheets Comments →