python 操作excel表格中图形到word

您所在的位置:网站首页 excel的图表复制到word python 操作excel表格中图形到word

python 操作excel表格中图形到word

2024-01-16 16:14| 来源: 网络整理| 查看: 265

在excel 中 图形为chart **的形式存在,图像以picture **的形式存在,则只取shape名称为chart的导入到WORD,使用docx 模块写入WORD

需要导入from PIL import ImageGrab, Image 用 pip pillow安装

from PIL import ImageGrab, Image #pip pillow import docx from docx.shared import Inches from docx import Document import time import win32com.client as win32 import os myDocument = Document() chartlocation = ['N20:Z50', 'A20:M50', 'A53:M83', 'N53:Z83', 'A86:M116', 'N86:Z116', 'A119:M149'] # 循环处理每个截图区域 # 能把所有图片按原图象素导出来 excel = win32.gencache.EnsureDispatch('Excel.Application') excel.Visible = True #可视化 excel.DisplayAlerts = False #是否显示警告 workbook = excel.Workbooks.Open(os.path.join(os.getcwd(),'2020年公司经营对比表.xlsx')) for sheet in workbook.Worksheets: if sheet.Name=='集团合计': for i, shape in enumerate(sheet.Shapes): print(sheet.Name,shape.Name) if shape.Name.startswith('Chart 7'): # 'Picture'为图,Chart 为图形 shape.Copy() image = ImageGrab.grabclipboard() image.save('temp{}.jpg'.format(i+1), 'jpeg') # # time.sleep(1.5) #print(type(image)) myDocument.add_paragraph('第{}张图'.format(i+1)) myDocument.add_picture('temp{}.jpg'.format(i+1), width=Inches(6.0)) excel.Quit() myDocument.save('out.docx')


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3