當 Excel 遇上 Python 工作流程自動化與數據分析實務

Eugene Chang (張佑成)

December 4th 2024

## 當 Excel 遇上 Python 工作流程自動化與數據分析實務 ![](https://drive.google.com/uc?export=download&id=1Edq1w2LqVhxXN-Uc68B3iRQBvHnYadZS) --- # About Me 張佑成 (Eugene, 念起來像是 "有勁") - 美國加州大學電機工程學士 - 臺灣大學資訊網路與多媒體研究所碩士 - kyosei.ai 共同創辦人 - 台大系統訓練班講師(授課時數超過 3750 小時) - 國泰金控教育訓練特聘講師 Email: yuyueugene84@gmail.com --- # 我為什麼要開這門課? --- # 現代職場幾乎離不開 Excel --- # 掌握好 Excel 就等於解決了很多問題 --- # 但是每天重複一樣的操作很麻煩... --- # 因此很多人就希望能夠透過一些簡單的程式去自動化和 Excel 相關的事務 --- # 所以才有了 **VBA** 這個語言 ![](https://drive.google.com/uc?export=download&id=1Gr9ZYFiI9rwn7cMXxtppqvBZC3zqMb8I) --- # VBA 的好處 --- # 自動化重複性高又無聊的操作 --- # 避免人爲的操作失誤 --- # 撰寫自訂函數 --- # 但是... --- # VBA 語言有一個壞處... --- # VBA 不是一個容易學的程式語言 --- # 原因在於 VBA 的應用很單一,是一個爲了自動化 Office 應用程式而存在的專門性語言 --- # 因此... 學習 VBA 的時間報酬率比學習其他語言來的差 --- # 導致... VBA 變成一個冷門的程式語言 --- # 我們可以參考一下 VBA 的市占率 程式語言市占率排行榜: [Tiobe](https://www.tiobe.com/tiobe-index/) --- # 一般我們在選擇程式語言時 都會優先挑選一個熱門的程式語言來使用 --- # 熱門的程式語言 代表相關的資源 / 教學多 將學習的門檻降低,學習此語言就越容易上手 --- # 就如同學習外語一樣 美式英文 vs 英式英文 我們一般會先選擇學習美式英文,純粹因爲有**更多人在使用** --- # 由此可見 程式語言這種工具的市占率,是符合冪律分佈的(熱門的語言會變得更熱門) --- # 説到近年來最熱門的程式語言 --- # Python ![](https://drive.google.com/uc?export=download&id=1Nc2f_LkuQRk_hT2OFsCiFNDJhK2JWuW0) --- # Python 的市占率 程式語言市占率排行榜: [Tiobe](https://www.tiobe.com/tiobe-index/) --- # Python 的好處 近年來一個熱門的程式語言 --- # 我們來參考一個量化指標 --- # Stack Overflow Stack Overflow 是一個程式設計師的問答網站 答題趨勢:[Stack Overflow](https://insights.stackoverflow.com/trends?tags=python%2Cvba) --- ## Python vs VBA 提問次數 ![](https://drive.google.com/uc?export=download&id=1y8N9ugK3i2opaNVisRuWccxqFklWpHLB) --- # 與 Python 相關的提問與討論遠超過 VBA --- # 因此當我們在學習 Python 時... 一旦遇到問題 / 卡關時,在網路上找到解決方法的機率相對高 --- # 由於 Python 的市占率高 因此 Python 界也有許多現成、與 Excel 串接的套件/程式庫 --- # 這些套件/程式庫 允許我們直接透過 Python 操作 Excel,無需另外學習 VBA --- # 若我們學會了 Python 與 Excel 之後 我們就可以主動整合兩者的優勢,來開發一些實用的工具 --- # 自動化 讓程式幫你處理一些重複又無聊的 Excel 流程 --- ## 匯整多個檔案的資料 ![](https://drive.google.com/uc?export=view&id=1FJaA8UGNJOKHZ18NNZXA6QskkzsMhLg-) --- ## 用 Pandas 自動化樞紐報表 ![](https://drive.google.com/uc?export=view&id=16KE3RTbX02KYh0ATo27yCraqLRv1XGLP) --- ## 網頁爬蟲 從指定的網頁截取資料 ![](https://drive.google.com/uc?export=view&id=1rzEmk2G_kaSGkv-NDjauHOJmNjN66ExK) --- ## 若爬蟲需要執行很久... 可以在程式執行完之後用 Python 發送一個 Line 訊息提醒自己 ![](https://drive.google.com/uc?export=download&id=1HKcH9589GLjoOcTX2_bKSUue-J1vOEwZ) --- ## 用 Excel 製作前端界面,將 Python 變成後端 --- ## 打造一個即時股價看板 ![](https://drive.google.com/uc?export=download&id=1K8MqMzg-71bk33rB-qVSGSmn8PxCAaCP) Excel 本身就是一個簡單易懂的資料庫之外,它也是一個可以跟使用者互動的界面 --- ## 打造一個即時股價看板 打造一個股價及時看板: https://youtu.be/5cf-G2IRVdk --- # 本課程主要用到的三大技術 - Python - Excel - Jupyter Notebook --- # 本課程的原則 ## 用最簡單易學的語言、 ## 搭配上最熟悉的工具、 ## 再用淺顯易懂的語法、 ## 快速打造出屬於自己的解決方案。 --- ## 希望大家能夠盡量動手實作 ![](https://drive.google.com/uc?export=download&id=1aNZmqZtBdFZfPqc9cmnc2OvxjRiekXKN) --- # 先來裝開發環境... --- # 本課程會用到的開發環境 ![](https://drive.google.com/uc?export=download&id=1FRJ7Bcdv4XqrWHHigIxWgWKWYidj61Am) --- # Anaconda 下載連結 [下載連結](https://www.anaconda.com/download/) --- # Anaconda 若你是使用學校的電腦,無需另外安裝 Anaconda --- # 安裝教學指南(PDF) 安裝指南:[PDF檔案](https://drive.google.com/uc?export=download&id=1mhyMLeQWn_-CWcJQohLzS2ICCtt0osPv) --- # Anaconda 安裝教學影片 Anaconda 安裝教學影片:[連結](https://youtu.be/1EW3Zv_vw0k) --- # 範例:用 Python 與 Excel 自動化樞紐報表 下載教材:[連結](https://drive.google.com/drive/folders/1GkZQdpJDsa_e2lUZgG1Kl7P8mnJaVGhH?usp=sharing) --- # Q&A --- # 感謝各位聆聽!

Thanks for Watching

Contact: yuyueugene84@gmail.com

Download PDF