Python辅助Word+Excel:让办公更高效
上QQ阅读APP看书,第一时间看更新

002 批量创建非空白的Excel文件

此案例主要通过使用while循环以及openpyxl.load_workbook()方法和Workbook的save()方法,从而实现在当前目录中根据已经存在的Excel文件批量创建多个非空白的Excel文件。当运行此案例的Python代码(A002.py文件)之后,将自动根据“利润表.xlsx”文件,在当前目录(MyCode\A002)中创建内容完全相同的7个Excel文件,如“结果表-上海分公司2020年度利润表.xlsx”等,效果分别如图002-1和图002-2所示。

图002-1

图002-2

A002.py文件的Python代码如下:

#导入openpyxl库
import openpyxl as myOpenpyxl
#设置分公司名称列表(myNames)
myNames=['北京分公司','上海分公司','深圳分公司','西安分公司',
          '沈阳分公司','重庆分公司','武汉分公司']
#根据"利润表.xlsx"文件创建工作簿(myBook)
myBook=myOpenpyxl.load_workbook('利润表.xlsx')
i=0;myLength=len(myNames)
#在while循环中批量创建与"利润表.xlsx"内容完全相同的Excel文件
while i <myLength:
      #根据分公司名称设置各个Excel文件的名称
      myPath='结果表-'+myNames[i]+'2020年度利润表.xlsx'
      i+=1
      #保存工作簿(myBook)或者说将工作簿(myBook)另存为Excel文件
      myBook.save(myPath)

在上面这段代码中,import openpyxl as myOpenpyxl表示在当前代码中导入openpyxl库,并使用myOpenpyxl名称代替openpyxl名称,as的这种功能在第三方库名称超长时特别有用。myBook=myOpenpyxl.load_workbook('利润表.xlsx')表示根据“利润表.xlsx”文件创建Workbook对象(myBook)。myBook.save(myPath)表示根据指定的参数(myPath)保存工作簿(或者说保存Excel文件)。注意:如果Excel文件已经存在,则正在保存的Excel文件将覆盖已经存在的Excel文件,且没有任何提示。

此案例的源文件是MyCode\A002\A002.py。