免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
實(shí)例11:用Python給Excel所有工作表添加圖片

我們?cè)趯?shí)例9里面展示了如何批量填寫每日出貨清單,每一天的清單都是直接復(fù)制“出貨單模板”,然后在其中填入出貨產(chǎn)品信息的。openpyxl有一個(gè)問(wèn)題,就是在復(fù)制工作表的時(shí)候,無(wú)法跟著復(fù)制圖片。而我們的公司名一般比較個(gè)性化,在Excel中用文字很難達(dá)到那個(gè)效果,比如如下:

此時(shí),我們就需要使用到openpyxl模塊的圖片插入功能。但這個(gè)功能有一個(gè)坑,我們下面來(lái)展開說(shuō)明。
按照openpyxl的官方文檔,添加圖片只需如下幾步:

from openpyxl.drawing.image import Image #導(dǎo)入圖片添加模塊
from openpyxl import load_workbook #導(dǎo)入Excel工作表操作模塊
img = Image('images\company.png') #需添加的圖片所在路徑
wb=load_workbook('data\出貨單.xlsx') #打開工作簿
ws=wb[sheet_name] #獲取工作表
ws.add_image(img,'A1') #添加圖片到指定的單元格
wb.save('data\出貨單_new.xlsx') #保存文件

下面我們就按照以上說(shuō)明來(lái)操作,看看效果怎么樣。

from openpyxl.drawing.image import Image
from openpyxl import load_workbook
img = Image('images\company.png') #需添加的圖片所在路徑
wb = load_workbook('data\出貨單.xlsx') #打開工作簿
sheet_names=wb.get_sheet_names() #獲得工作簿的所有工作表名
for sheet_name in sheet_names: #遍歷每個(gè)工作表,并在每個(gè)工作表的A1單元格插入圖片
ws=wb[sheet_name]
ws.add_image(img, 'A1')#添加圖片到指定的A1單元格,圖片左上角將與A1單元格左上角對(duì)齊
wb.save('data\出貨單—new.xlsx')

我們通過(guò)遍歷“出貨單.xlsx”文件中的所有工作表,然后每個(gè)工作表都在A1單元格插入我們?cè)O(shè)定好的圖片,最后保存。待程序執(zhí)行完成,打開保存的文件“出貨單—new.xlsx”,報(bào)出如下錯(cuò)誤:

我們選擇“是”,繼續(xù)下一步,再報(bào)出錯(cuò)誤:

點(diǎn)擊“關(guān)閉”,繼續(xù)下一步。我們發(fā)現(xiàn)除了最后一個(gè)工作表“12-23”,其他工作表圖片全部無(wú)法正常顯示,都帶有一個(gè)紅色的“X”,顯示為“無(wú)法顯示該圖片”。

我花了很多時(shí)間來(lái)研究到底怎么回事,然后也做了很多測(cè)試。最后發(fā)現(xiàn),每插入一張圖片就需要保存一下,才可保證圖片正常顯示。因此將程序稍作修改如下。即每給一個(gè)工作表插入圖片后,都保存一次,而不是給所有工作表插完圖片后,最后才來(lái)保存。相當(dāng)于我們不停地打開“出貨單.xlsx”,然后在其中的各個(gè)工作表依次插入圖片,每操作一次,保存一次。時(shí)間會(huì)比只保存一次更長(zhǎng),但畢竟比手動(dòng)插入圖片快很多了。最終,每張工作表都插入圖片成功,呲牙...

from openpyxl.drawing.image import Image
img = Image('images\company.png')
wb = load_workbook('data\出貨單.xlsx')
sheet_names=wb.get_sheet_names()
for sheet_name in sheet_names:
wb = load_workbook('data\出貨單.xlsx')
ws=wb[sheet_name]
ws.add_image(img, 'A1')
wb.save('data\出貨單.xlsx')

所有源代碼和說(shuō)明都在Jupyter notebook上完成,所用到的Excel 資料已上傳GitHub, 歡迎Fork或下載到本地隨意玩。。。轉(zhuǎn)載請(qǐng)注明出處,謝謝。
GitHub鏈接:

https://github.com/weidylan/Office_Automation_by_Using_Python

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
python 讀寫excel工具openPyXL
openpyxl在修改表格數(shù)據(jù),無(wú)效?
python+openpyxl創(chuàng)建excel
Python3 讀取和寫入excel xlsx文件 使用openpyxl
Python3 讀取和寫入excel xlsx文件
Python處理Excel表格
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服