一、使用WPS的`SHEETSNAME`函数
WPS表格提供了便捷的`SHEETSNAME`函数,可快速获取工作表名称。其语法为:
```excel
=SHEETSNAME(参照区域, 结果方向, 是否包含当前工作表)
```
参数说明
参照区域:
指定包含工作表名称的单元格(如`行政部!B2`)
结果方向:
0表示结果放在行,1表示放在列
是否包含当前工作表:
0包含,1不包含
示例:获取当前工作簿所有工作表名称
`=SHEETSNAME()`
二、使用Python(openpyxl库)
通过Python脚本批量处理Excel文件,适合处理大量数据。以下是基本步骤:
安装openpyxl ```bash
pip install openpyxl
```
加载工作簿并获取Sheet名称
```python
import openpyxl
加载Excel文件
workbook = openpyxl.load_workbook('filename.xlsx')
sheet_names = workbook.sheetnames
print(sheet_names)
```
修改或保存工作表名称
```python
修改第一个Sheet名称
workbook[sheet_names].title = "新名称"
workbook.save('修改后的文件.xlsx')
批量重命名
for i, sheet_name in enumerate(sheet_names):
workbook[sheet_name].title = f"数据表{i+1}"
workbook.save('批量修改后的文件.xlsx')
```
三、使用VBA宏
通过VBA脚本批量提取工作表名称并生成新表,适合熟悉Excel宏的用户:
打开VBA编辑器(Alt + F11)
插入新工作表并运行宏
```vba
Sub 提取工作表名称()
Dim ws As Worksheet
Dim wsNew As Worksheet
Dim i As Integer
' 新建汇总表
Set wsNew = ThisWorkbook.Worksheets.Add
wsNew.Name = "工作表名称汇总"
i = 1
' 遍历所有工作表
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> wsNew.Name Then
wsNew.Cells(i, 1).Value = ws.Name
i = i + 1
End If
Next ws
MsgBox "所有工作表名称已提取到" & wsNew.Name & "中!", vbInformation
End Sub
```
运行宏(按F5)
四、其他方法
公式法: 在单元格输入`=RIGHT(CELL("filename"), LEN(CELL("filename")) - FIND(" ", CELL("filename")))`可获取当前工作表名称 Power Query
以上方法可根据具体场景选择,WPS函数适合快速查看,Python和VBA适合批量处理和自动化需求。