300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Python+Excel系列:案例六:批量打印工作簿 批量打印多个工作簿中的指定工作表

Python+Excel系列:案例六:批量打印工作簿 批量打印多个工作簿中的指定工作表

时间:2019-06-23 14:27:03

相关推荐

Python+Excel系列:案例六:批量打印工作簿 批量打印多个工作簿中的指定工作表

文章目录

批量打印工作簿批量打印多个工作簿中的指定工作表

批量打印工作簿

专门用于打印的函数PrintOut()

import os #导入os模块import xlwings as xw #导入xlwings模块file_path = 'e:/table' #给出要打印的工作簿所在的文件夹路径file_list = os.listdir(file_path) #列出文件夹下所有文件和子文件夹的名称app = xw.App(visible=False,add_book=False)for i in file_list:if i.startswith('~$'):# 判断是否有文件名以“~$”开头的文件continue # 如果有,则跳过这种类型的文件file_paths = os.path.join(file_path,i) #获取需要打印的工作簿的文件路径workbook = app.books.open(file_paths) #打开要打印的工作簿workbook.api.PrintOut() #打印工作簿app.quit()

因为xlwings模块没有提供打印工作簿的函数,所以第11行代码利用工作簿对象的api属性调用VBA的PrintOut()函数来打印工作簿,该函数的语法格式和常用参数含义如下:

PrintOut(From,To,Copies,Preview,ActivePrinter,PrintToFile,Collate,PrToFile)

批量打印多个工作簿中的指定工作表

import os #导入os模块import xlwings as xw #导入xlwings模块file_path = 'e:/table' #给出要打印的工作簿所在的文件夹路径file_list = os.listdir(file_path) #列出文件夹下所有文件和子文件夹的名称sheet_name = 'sheetX' #给出要打印的工作表的名称app = xw.App(visible=False,add_book=False)for i in file_list:if i.startswith('~$'):# 判断是否有文件名以“~$”开头的文件continue # 如果有,则跳过这种类型的文件file_paths = os.path.join(file_path,i) #获取需要打印的工作簿的文件路径workbook = app.books.open(file_paths) #打开要打印的工作簿for j in workbook.sheets:if j.name == sheet_name: #判断工作簿中是否存在名为“sheetX”的工作表j.api.PrintOut() #如果存在,则打印该工作表breakapp.quit()

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。