要批量修改 Excel 工作簿中所有工作表的名称,可以使用 xlwings
库的 sheets
属性和 name
属性。
以下是一个示例代码,演示如何使用 xlwings
批量修改工作簿中所有工作表的名称:
import xlwings as xw
def rename_worksheets(workbook_path, new_names):
"""
批量修改 Excel 工作簿中所有工作表的名称
:param workbook_path: 工作簿文件路径
:param new_names: 新的工作表名称列表,按顺序与原工作表对应
"""
app = xw.App(visible=False) # 创建一个不可见的 Excel 应用程序实例
wb = app.books.open(workbook_path) # 打开指定的工作簿
# 获取工作簿中所有工作表的列表
sheets = wb.sheets
# 遍历工作簿中的每个工作表,并修改其名称
for i in range(len(sheets)):
sheet = sheets[i]
new_name = new_names[i]
# 修改工作表名称
sheet.name = new_name
# 保存并关闭工作簿
wb.save()
wb.close()
# 退出 Excel 应用程序
app.quit()
# 示例:批量修改工作簿中所有工作表的名称
workbook_path = "path/to/workbook.xlsx" # 工作簿文件路径
new_names = ["Sheet1_new", "Sheet2_new", "Sheet3_new"] # 新的工作表名称列表
rename_worksheets(workbook_path, new_names)
在示例代码中,首先创建一个 Excel 应用程序实例,并打开指定的工作簿。
然后,获取工作簿中所有工作表的列表,并通过遍历列表来逐个修改工作表的名称。
最后,保存并关闭工作簿,并退出 Excel 应用程序。
你需要将示例代码中的 "path/to/workbook.xlsx"
替换为实际的工作簿文件路径,并提供一个新的工作表名称列表 new_names
,按顺序与原工作表对应。
运行示例代码后,工作簿中所有工作表的名称将被批量修改为新的名称。
了解更多python项目开发,请关注我:Python提升课堂