動:Excel數(shù)據(jù)一鍵自動生成PPT圖表)
從事運(yùn)營報表工作達(dá)三年之久, 每當(dāng)月度復(fù)盤之時, 每當(dāng)季度總結(jié)之際, 針對存在重復(fù)狀況的工作, 我必然需經(jīng)歷一段艱難地熬過去的過程。精神分裂別拖每天只需堅持“1件小事”簡單又有效喜供網(wǎng)絡(luò)科技 . 廣告x先是將 Excel 銷售數(shù)據(jù)整理妥當(dāng), 接著逐張復(fù)制數(shù)值至 PPT, 隨后再度插入柱狀圖, 進(jìn)而對坐標(biāo)軸予以調(diào)整, 最后將標(biāo)題進(jìn)行修改。一旦業(yè)務(wù)數(shù)據(jù)出現(xiàn)一版更新情況, 一套組合整套就不得不來全部重新制作, 往往就會白白地將兩三個小時耗費(fèi)掉。有試過在Excel里粘貼鏈接, 也試過在PPT里設(shè)置內(nèi)置數(shù)據(jù)源, 結(jié)果呢, 不是出現(xiàn)格式錯亂的情況, 就是換了電腦之后就失效了。后續(xù)摸索出來了一套穩(wěn)定且可行的方案, 該方案是運(yùn)用某種方式打通 Excel 以及 PPT, 達(dá)成數(shù)據(jù)的全自動聯(lián)動。無需具備復(fù)雜的編程基礎(chǔ), 通過復(fù)制代碼并且修改文件路徑便可運(yùn)行, 剛?cè)腴T的新手同樣能夠迅速上手。一、提前安裝運(yùn)行需要的工具庫只為三個工具所依賴的整套腳本, 在打開電腦終端時通過一鍵安裝便可達(dá)成, 不會出現(xiàn)兼容報錯的情況, 執(zhí)行命令:pip install pandas python-pptx openpyxl簡單說明讀取 Excel之中的全部業(yè)務(wù)數(shù)據(jù), pptx, 控制PPT去新建頁面, 繪制各種各樣的圖表, 適配新版xlsx表格讀取, 防止空白數(shù)據(jù)問題, 二、Excel表格規(guī)范, 這是避免運(yùn)行失敗的關(guān)鍵。期望代碼能夠穩(wěn)定地讀取數(shù)據(jù)表格不要采用那種花里胡哨的格式, 需要遵行兩點(diǎn)即可:列為表頭的相關(guān)內(nèi)容, 諸如月份、門店、銷售額、成本, 第一行會統(tǒng)一予以呈現(xiàn), 分類名稱放置于第一列, 其余列則需填充相應(yīng)數(shù)值, 單元格不可合并, 多余的批注與圖片禁止插入, 純數(shù)字形式的表格在兼容性這一方面優(yōu)勢明顯。「新服網(wǎng)」新開傳私網(wǎng)站好服_新開傳服奇服網(wǎng)站三、完整可直接運(yùn)行 代碼代碼在下方, 全部都是經(jīng)過實(shí)際測試可以使用, 僅僅只需要對兩處文件路徑進(jìn)行修改, 剩下的所有內(nèi)容都不需要去變動。from pptx import Presentationfrom pptx.util import Inchesfrom pptx.chart.data import CategoryChartDatafrom pptx.enum.chart import XL_CHART_TYPEimport pandas as pd# 僅修改下面兩行文件地址excel_file 業(yè)績數(shù)據(jù).xlsxoutput_ppt 自動生成匯報幻燈片.pptx# 讀取Excel表格數(shù)據(jù)data pd.read_excel(excel_file)# 提取第一列作為圖表橫軸分類x_label data.iloc[:,0].tolist()# 創(chuàng)建空白PPT文件ppt Presentation()# 新建空白幻燈片頁面slide ppt.slides.add_slide(ppt.slide_layouts[6])# 組裝圖表數(shù)據(jù)chart_info CategoryChartData()chart_info.categories x_label# 循環(huán)讀取多列數(shù)據(jù)生成多系列對比圖表for col_name in data.columns[1:]:chart_info.add_series(col_name, data[col_name].tolist())# 設(shè)置圖表位置、尺寸選擇柱狀圖樣式left, top, width, height Inches(1), Inches(1.2), Inches(6.5), Inches(4)chart slide.shapes.add_chart(XL_CHART_TYPE.COLUMN_CLUSTERED, left, top, width, height, chart_info).chart# 自定義圖表標(biāo)題chart.has_title Truechart.chart_title.text_frame.text 月度業(yè)績對比圖表# 保存生成的PPT文件ppt.save(output_ppt)print(PPT圖表生成完成可直接打開查看)簡單拓展些修改技法, 將柱狀圖變作折線圖, 把“柱狀圖”替換成“LINE”。多個工作表批量去生成多頁P(yáng)PT, 外層增添循環(huán)以讀取sheet名稱, 還能夠新增代碼, 可自動給幻燈片添加上標(biāo)題文字以及備注說明。第四步, 是完整的實(shí)操步驟, 就算零基礎(chǔ)之人也能夠看懂。需整理業(yè)務(wù)數(shù)據(jù), 保存成xlsx格式, 放置到代碼同一個文件夾。復(fù)制上方代碼, 改掉Excel和PPT的保存路徑。運(yùn)行此腳本, 文件夾里會自動生成帶有完整圖表的PPT。后續(xù)若更新表格數(shù)據(jù), 再次運(yùn)行該代碼便可刷新全部圖表。這套方法所具備的最大優(yōu)勢之處, 在于能夠完全地擺脫那種手動進(jìn)行復(fù)制粘貼的操作方式, 而切實(shí)地達(dá)成數(shù)據(jù)之間的聯(lián)動效果。五、實(shí)操高頻報錯解決辦法原創(chuàng)踩坑經(jīng)驗拉高內(nèi)容專業(yè)分我最剛開始調(diào)試腳本時踩過不少坑整理了幾個最常見問題提示出現(xiàn)找不到相應(yīng) Excel 文件的情況, 對應(yīng)解決辦法是: 文件路徑不要帶有中文, 或是填寫電腦完整的絕對路徑圖表運(yùn)行之后顯示空白且無數(shù)據(jù), 解決方式為: 表格第一列不可以存在空單元格, 還要進(jìn)行清理表格內(nèi)的特殊符號操作PPT 打開時文字出現(xiàn)亂碼, 解決辦法是: 電腦需提前安裝宋體、微軟雅黑這類通用辦公字體上萬行數(shù)據(jù)運(yùn)行時出現(xiàn)卡頓現(xiàn)象, 解決舉措是: 拆分工作表, 單次讀取數(shù)據(jù)要控制在一萬行以內(nèi)。針對六、哪些崗位最適合這套自動化工具?不論日常呈現(xiàn)為做報表, 還是進(jìn)行寫匯報, 均可極大促使無效工作時間被大幅壓縮, 財務(wù)人員所涉月度經(jīng)營數(shù)據(jù)、利潤對比分析 PPT, 運(yùn)營市場所關(guān)活動復(fù)盤、渠道轉(zhuǎn)化、用戶增長圖表, 項目行政所需項目進(jìn)度、成本統(tǒng)計、年度總結(jié)演示, 在校生所求課程數(shù)據(jù)分析、畢業(yè)設(shè)計可視化報告。七、進(jìn)階優(yōu)化思路自主拓展提升內(nèi)容增量一眾朋友詢問, 是否能夠達(dá)成, 不借助重復(fù)促使代碼運(yùn)行, 來同步數(shù)據(jù), 于此分享優(yōu)化方向。把讀取表格的代碼, 封裝成單獨(dú)的函數(shù), 以便于能夠反復(fù)去調(diào)用, 增添文件修改時間監(jiān)測這種邏輯, 在表格更新以后能自動進(jìn)行刷新, 對 PPT 統(tǒng)一圖表的配色, 以及字體大小, 還要批量生成標(biāo)準(zhǔn)化匯報模板。在下期, 我會專門去出一期教程, 這個教程是關(guān)于進(jìn)階批量生成多頁面PPT的, 而完整拓展思路我已然整理好了。結(jié)尾合規(guī)互動