zoukankan      html  css  js  c++  java
  • xlwings批量重命名工作表

    在同一个工作簿中有多个有规律的表名,对名称进行重命名,利用worksheets[i].name.replace(old_name,new_name)方法进行

    #批量重命名一个工作簿中所有的工作表

    import xlwings as xw
    file_path = '/Users/hugua/Desktop/python_practise/统计表.xlsx'
    app = xw.App(visible=True,add_book=False)
    workbook = app.books.open(file_path)
    worksheets = workbook.sheets
    for i in range(len(worksheets)):
    worksheets[i].name = worksheets[i].name.replace('销售','')
    workbook.save('/Users/hugua/Desktop/python_practise/统计表1.xlsx')

    #打印更改后的工作表名
    new_file_path = '/Users/hugua/Desktop/python_practise/统计表1.xlsx'
    new_workbook = app.books.open(new_file_path)
    new_worksheets = new_workbook.sheets
    for a in new_worksheets:
    print(a)
    app.quit()

    结果:

    <Sheet [统计表1.xlsx]分部一>
    <Sheet [统计表1.xlsx]分部二>
    <Sheet [统计表1.xlsx]分部三>
    <Sheet [统计表1.xlsx]分部四>
    <Sheet [统计表1.xlsx]分部五>
    <Sheet [统计表1.xlsx]分部六>
    <Sheet [统计表1.xlsx]分部七>

    如果只进行部分工作表名称的更改,比如只改前五个表名称,则需要使用切片功能,修改代码,完整代码如下:

    #批量重命名一个工作簿中所有的工作表

    import xlwings as xw
    file_path = '/Users/hugua/Desktop/python_practise/统计表.xlsx'
    app = xw.App(visible=True,add_book=False)
    workbook = app.books.open(file_path)
    worksheets = workbook.sheets
    for i in range(len(worksheets))[:5]:
    worksheets[i].name = worksheets[i].name.replace('销售','')
    workbook.save('/Users/hugua/Desktop/python_practise/统计表2.xlsx')

    #打印更改后的工作表名
    new_file_path = '/Users/hugua/Desktop/python_practise/统计表2.xlsx'
    new_workbook = app.books.open(new_file_path)
    new_worksheets = new_workbook.sheets
    for a in new_worksheets:
    print(a)
    app.quit()

    结果显示如下:

    <Sheet [统计表2.xlsx]分部一>
    <Sheet [统计表2.xlsx]分部二>
    <Sheet [统计表2.xlsx]分部三>
    <Sheet [统计表2.xlsx]分部四>
    <Sheet [统计表2.xlsx]分部五>
    <Sheet [统计表2.xlsx]销售分部六>
    <Sheet [统计表2.xlsx]销售分部七>

    结果中可以看到前五个工作表的名称被修改了,后面两个没改变。

  • 相关阅读:
    Java 动态编译
    在ubuntu 18.04下,无线网卡无驱动,连不上wifi,显示wifi没有适配器的解决方法
    由浅入深了解Thrift(1,2,3)
    Docker系列05:docker镜像制作 &Docker file
    Docker系列04:docker数据存储
    Docker系列03:docker网络
    关于在github上 下载源码 clone 非 master 分支的代码
    CentOS 6 & 7 忘记root密码的修改方法
    Windows RDP远程连接CentOS 7
    Windows 上用IntelliJ Idea调试百度大数据分析框架Apache Doris FE
  • 原文地址:https://www.cnblogs.com/huguangqin/p/15731743.html
Copyright © 2011-2022 走看看