彙整報表、分析資料、製作圖表……
Excel是各行各業必備的工具,
重複開啟資料、剪貼,耗時又耗能,
學會Python,讓多份Excel資料交叉分析,一鍵自動化!★ 日本熱銷33,000冊
★ 程式菜鳥也能迅速上手,表格自動化就交給Python,大大提升工作效率
★ 行政人員、文書處理必學的工作書,讓你事半功倍
如果你處理數據資料和報表的方式如下,必讀本書:
.一個一個開啟報表,選取資料匯入總表,不斷重複相同動作
.逐一將表格格式化、設定列印資訊,耗費大量時間
.資料逐一繪製圖表、一份一份轉檔,讓自己眼花撩亂
平時需要5步驟的Excel操作,學會Python只需1步驟就能快速完成,
讓你工作效率比其他人高,也是各界人才具備的技能——
.學生製作資料分析報告
.老師系統化管理成績
.主管秒速完成季報、年報業績表
.業務人員製作視覺化競業數據資料
.行政人員快速完成統計報表……
◎ 最受歡迎也最容易上手程式語言——PythonPython是一種可以廣泛使用的程式語言,用於數據分析、資料處理、應用開發等,
透過程式,能自動化處理許多繁瑣的步驟,節省大量時間。
很多人可能會覺得寫程式很難,是本科系的專業,
但Python的程式語言相當簡潔易懂,貼近使用者的習慣,
其他程式語言需要寫數十行,Python只要短短幾行即可,
這也讓Python近年來成為最受歡迎的程式之一,
無論是本科生、文組生、已學過程式或沒碰過程式的人,都能輕鬆上手。
◎用Python處理Excel,把繁瑣工作自動化,效率瞬間提升將Python運用於Excel中,能幫我們自動處理繁複的步驟,
使原本需要重複開啟、計算、逐一格式化、轉檔等流程,變得只要一秒搞定。
不僅大幅提升工作效率,也能避免在作業時不小心出錯,幫你更快完成大量、複雜的報表:
.瞬間匯入大量資料:自動化開啟檔案,挑出所需內容整理成CSV檔、匯入系統
.不費力完成交叉分析:先分析客戶資料,再依照商品資訊進行交叉比對
.格式設定與列印:自動將報表格式化,呈現清楚易讀的內容
.將資料繪製成圖表:將資料繪製成長條圖、折線圖、區域圖等各式圖表
.自動轉檔:將報表自動轉檔為PDF檔
本書從Python的基本安裝、基礎語法和知識,
搭配Excel製作資料報表常見的職場情境,
利用圖解的方式,一步一步教你輕鬆學會用Python自動化處理Excel,
讓你追求更高效率、減輕繁瑣的工作負擔!
作者簡介:
金宏和實
關西學院大學畢業。第一類資訊處理技術士、株式會社Easier董事長副總經理,從事應用程式開發與寫作。擁有35年程式設計師資歷,每天都以宣揚程式設計樂趣為生活重心。目前於NPO法人NAT教國中小學生機器人程式設計語言。2018年與2019年於富山大學藝術文化學部擔任程式設計課程約聘講師。
著有《Python入門!從零開始的遊戲程式設計》、《用Excel輕鬆暢玩程式設計超基礎篇》、《一做就上手!支援Kotlin的Android程式設計》、《一做就上手!Android程式設計》、《程式設計老手細細傳授資料庫知識及實務》等。
部落格http://kanehiro.exe.jp
推特@kanehiro
臉書KanehiroKazumi
譯者簡介:
許郁文
輔仁大學影像傳播學系畢業。因對日文有興趣,於東吳日語教育研究所取得碩士學位。曾擔任日商多媒體編輯、雜誌日文採訪記者,現職為專職譯者。
譯作包含《東京歷史不思議》、《至死不渝的高速閱讀法》、《家事的科學》、《三明治研究室》、《三日間的幸福》、《海賊王的時代》。
歡迎大家透過臉書認識我
臉書barista hsu
Email:baristahsu@gmail.com
章節試閱
前言 Python 讓Excel 變得更快、更方便
身為程式設計師的我在寫這本書時發現,乍看之下很複雜的Excel,只要利用Python將相關的功能寫成程式,就會產生一種「原來Excel功能的背後是如此運作的啊」的感覺,也發現Excel變得簡單易懂。
放眼一般職場,許多資料或檔案都是以Excel製作,此時若想單以Excel迅速操作這些資料,可能得另外使用函數或以VBA撰寫巨集程式。這種方式的確很方便,卻也衍生下列問題。
•不知道這部分的程式有什麼功能。換言之,難以釐清工作表裡的函數、Excel的功能與VBA撰寫的巨集,到底分別負責哪些部分。
•每個負責人對於Excel的熟稔度有落差,所以相關的資料很難交接。
所以本書才建議採取「資料交由Excel建立,程式則由Python撰寫」的模式。假設這兩個部分能齊頭並進,肯定能更靈活地運用於職場製作的資料。
◎ 操作Excel工作表
麻美:千岳,可以問你一點事情嗎?
綽號千岳的千田岳在總務課工作,某天他的同期同事,也是擔任業務助理的千田麻美來找他,好像有事想請教。
麻美:富井課長突然丟給我一個麻煩啦,我們部門是用KABUKI 的網路銷售管理系統管理業績,課長要我了解一下業務員用Excel製作的檔案,再負責輸入業績傳票,可是這些都是步驟很重複的作業,做起來好煩!我跟課長抱怨後,他就說「從Excel輸出CLV,就能一口氣將業績資料新增至網路銷售管理系統,不用一筆筆慢慢輸入,所以給我試著用VBA製作這個程式」,但我根本不知道該怎麼寫這個程式!
千岳:CLV?那是什麼?
麻美:CLV就CLV啦!
千岳:啊,是CSV吧!
麻美:對對對,一定是這個,如果能一口氣新增資料就好了。
千岳:的確,現在這樣要花兩道工夫才能完成,得一邊看著Excel的傳票,一邊用瀏覽器輸入。
西瑪服飾業務課的業務員會從報價單的階段就以Excel製作資料,同時透過公司內部伺服器分享。從報價單、訂單與營業額的資料都是業務員自行管理。一旦營業額確定,業務員就會將業績傳票上傳至伺服器的業績資料夾,麻美這些業務助理再根據這些業績傳票,將資料輸入網路銷售管理系統,這也是西瑪服飾的業務流程。
麻美:就是這樣啊,我想千岳你也知道,網路銷售管理可包辦報價單製作、訂單、業績這些作業,但是業務員從以前就開始使用Excel,所以總覺得用Excel比較好。「我的報價單還會用網底這類樣式裝飾得很酷喲!」富井課長總是拿這些說嘴。這些事情沒辦法用千岳擅長的Python完成嗎?
千岳:的確能照富井課長說的以VBA輸出CSV,但Python應該也能完成一樣的事情喲!
麻美:咦?可以完成一樣的事情啊?那幫我做,幫我做啦,明天能完成嗎?
千岳:哪有可能說做好就做好啊,至少得給我一點時間啦⋯⋯
麻美:怎麼這樣啦,千岳你很沒用耶!
千岳:幹麼說我沒用!
被課長要求「學習VBA」的麻美似乎跑去求助了解Python的千岳。這對千岳來說,可能是稍微過分的要求了,所以就讓我們代替千岳,寫一個讓麻美開心的程式。
實際試作之後,這個程式其實沒想像中的複雜,而且還很簡單,但是突然要程式設計的初學者寫出這個程式,還是太過苛求了。我們先透過本章介紹的程式,學習如何讀寫Excel資料的方法。
◆ 一次匯入所有制式資料
第一步讓我們先釐清課題,找出業務流程該改善的環節。
從麻美的抱怨聽來,我們要解決的課題,似乎是「將伺服器的業績傳票(Excel資料)盡可能自動轉寫至網路銷售管理系統」。
目前必須手動輸入的作業包含:
① 用瀏覽伺服器的每一筆業績傳票
② 將業績傳票的內容新增至網路銷售管理系統
上述這兩個階段。由於①與②都是人工作業,所以只要業績傳票的件數一多,那可就是累死人的作業了。
讓我們先試著讓①的作業自動化,從開啟的每一個業績傳票檔案挑出需要的內容。若能將這些內容整理成CSV檔案,就能一口氣匯入銷售管理系統,②的部分也似乎能就此迎刃而解。這樣應該可以幫麻美減去不少麻煩。
我們預設的是,要操作的檔案儲存在一資料夾,其中有python_prg資料夾和data資料夾,而data資料夾中,還有一個sales資料夾,裡面儲存了以負責人代碼為檔案名稱的業績傳票資料。
Excel 檔案是活頁簿格式,活頁簿裡面還有多張工作表。
這次的作業,就是要開啟sales資料夾裡的多個活頁簿,再從其中的多張工作表,將業績傳票的內容轉寫至業績一覽工作表。
在此將處理下列的資料。
業績傳票資料是由每一位負責人製作成活頁簿格式,接著在一張工作表裡輸入一筆業績傳票,所以一個活頁簿可能會有超過一張以上的工作表,但是在每個負責人製作的活頁簿裡,工作表的張數都是不一定的。
建立一覽表
在撰寫程式之前,要先說明預設的環境。
以Python撰寫的程式通常會以「.py」這個副檔名儲存,而本書是以「sales_slip2csv.py」這個檔案名稱,儲存在 python_prg資料夾裡。
順帶一提,檔案名稱裡的「sales」指的是業務專用程式,「slip」為傳票,「csv」則代表轉存格式為CSV 檔案。「2」則是是英文的「to」,所以「slip2csv」則有「傳票轉存為CSV檔案」的意思。2常常因為諧音而被當成to使用。
目前的業績傳票檔案是由每位員工自行整理成一個檔案,每一張傳票都製作成一張工作表,所以一個檔案會有多張工作表。
接下來,要從上述的業績傳票檔案,將指定的範圍的資料,轉存為CSV格式的一覽表檔案salesList.csv。
之後我們就可以用程式碼來完成。
前言 Python 讓Excel 變得更快、更方便
身為程式設計師的我在寫這本書時發現,乍看之下很複雜的Excel,只要利用Python將相關的功能寫成程式,就會產生一種「原來Excel功能的背後是如此運作的啊」的感覺,也發現Excel變得簡單易懂。
放眼一般職場,許多資料或檔案都是以Excel製作,此時若想單以Excel迅速操作這些資料,可能得另外使用函數或以VBA撰寫巨集程式。這種方式的確很方便,卻也衍生下列問題。
•不知道這部分的程式有什麼功能。換言之,難以釐清工作表裡的函數、Excel的功能與VBA撰寫的巨集,到底分別負責哪些部分。
•每個負...
目錄
前言 Python讓Excel變得更快、更方便
下載範例檔案
第1章 何謂Python?
01. Python的特徵
程式語言的規格很單純
縮排是一種語法
函式庫豐富,應用範圍廣泛
02. VBA與Python的差異
雖為初學者設計,卻導致敘述非常迂迴難懂的VBA
03. 打造Python的程式語言環境
第一步是安裝Python
試著啟動Python,確認運作情況
安裝Visual Studio Code
新增有利於程式設計的擴充功能
第2章 Python與程式設計的基本知識
01. Python的語法
變數與資料類型
變數的命名方式
算數運算子
比較運算子、複合指定運算子、邏輯運算子
函數
也可自訂函數
物件導向
第3章 利用Python輕鬆讀寫Excel
01. 一次匯入所有制式資料
建立一覽表
02. 撰寫實用程式的基本技巧
安裝外部函式庫
利用if陳述式撰寫條件分歧
執行重複處理時的for語法
從Excel檔案匯入的範圍
資料格式之一的串列
以CSV格式輸出
Excel檔案位於伺服器或NAS時的處理
執行之後,顯示「版本錯誤」?
第4章 統計、彙整、交叉分析⋯⋯也難不倒
01. 業績統計與訂單交叉分析
鍵與值成對的資料格式就是字典
利用Python,統計業績一覽表的各負責人、客戶資料
依照商品分類與尺寸大小,針對訂單一覽表進行交叉分析的程式
02. 本章學習的技巧
資料結構
初始化二維串列
在程式嵌入Excel函數
第5章 美化表格變易讀的格式設定技巧
01. 在統計表套用格式的範例程式
02. 本章學習的技巧
import陳述句的語法
隱藏列與欄
統整儲存格的格式設定
raw字串
框線樣式
指定儲存格的方法
利用Python設定格式化條件
設定色階
第6 章 快速自動繪製統計圖表
01. 繪製圖表的範例程式
繪製長條圖
堆疊長條圖
折線圖
區域圖
圓餅圖
雷達圖
泡泡圖
執行程式的方法
第7章 多筆資料轉存PDF
01. 將Excel轉成PDF的程式
利用COM從Python操作Excel
安裝win32com套件
將多個收貨單轉換成PDF
利用Python程式編排版面,再轉存為PDF
結語 Python幫你把重複的作業自動化
前言 Python讓Excel變得更快、更方便
下載範例檔案
第1章 何謂Python?
01. Python的特徵
程式語言的規格很單純
縮排是一種語法
函式庫豐富,應用範圍廣泛
02. VBA與Python的差異
雖為初學者設計,卻導致敘述非常迂迴難懂的VBA
03. 打造Python的程式語言環境
第一步是安裝Python
試著啟動Python,確認運作情況
安裝Visual Studio Code
新增有利於程式設計的擴充功能
第2章 Python與程式設計的基本知識
01. Python的語法
變數與資料類型
變數的命名方式
算數運算子
比較運算子、複合指定運算子、邏輯運算子...