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