一、使用公式法
提取工作表名称到新列 在目标表格的A列输入以下公式(假设数据从A1开始):
```excel
=MID(GET.WORKBOOK(1), FIND("]", GET.WORKBOOK(1)) + 1, 20) & T(NOW())
```
该公式通过`GET.WORKBOOK(1)`获取当前工作簿名称,`FIND("]", ...)`定位名称起始位置,`MID`提取名称,`T(NOW())`添加当前时间戳。输入后按`Ctrl+E`填充整列。
创建超链接到对应工作表
在目标表格的A2单元格输入:
```excel
=HYPERLINK("" & INDEX(工作表名称数组, ROW(A1)), 工作表名称数组
```
使用`INDEX`函数遍历工作表名称数组,生成指向各工作表的超链接。需先通过`Ctrl+F3`定义名称数组(如`X`),格式为`=MID(GET.WORKBOOK(1), FIND("]", GET.WORKBOOK(1)) + 1, 100)`。
二、使用VBA宏
提取所有工作表名称
按`Alt+F11`打开VBA编辑器,插入新模块并输入以下代码:
```vba
Sub ListSheetNames()
Dim ws As Worksheet
Dim sheetNames As Collection
Set sheetNames = New Collection
For Each ws In ThisWorkbook.Worksheets
sheetNames.Add ws.Name
Next ws
Sheet1.Range("A1").Resize(1, sheetNames.Count).Value = sheetNames
End Sub
```
运行后,工作表名称将填充到目标表格的A列。
三、其他注意事项
文件路径提取: 若需复制工作簿路径而非名称,可通过`Ctrl+V`粘贴路径后,使用`Ctrl+E`智能填充。 兼容性处理
以上方法可根据数据量、Excel版本及具体需求选择。若需进一步处理(如动态链接更新),建议结合公式与VBA使用。