用 Python 寫出 Excel 的自動化程式

據國外媒體報導,微軟正考慮添加 Python 為官方的一種 Excel 腳本語言,意味著未來若學會 Python 這個語言後,無需另外學 VBA,也可以為 Excel 寫自動化的程式。Excel 用戶也能夠像目前使用 VBA 腳本一樣,透過 Python 寫出來的腳本與 Excel 檔、數據以及一些 Excel 核心函數進行串接。

但是在微軟正式將 Python 變成 Excel 的官方腳本語言以前,其實 Python 社群已經有許多讓 Python 串接 Excel 的套件,這些套件能讓我們透過 Python 實作出類似 VBA 巨集的功能,允許我們在未來還沒發生前就已經可以開始用 Python 為 Excel 寫程式。

另外,一旦我們可以使用 Python,也代表我們可以脫離 Excel 與微軟的限制,使用許多強大的 Python 套件,像是 Pandas 與 Numpy,來幫助我們更有效率的實作出想要的功能,或是實作出超越微軟内建的功能。

本課程是應用導向,聚焦在 Python 與 Excel 的串接與整合上,無論你/妳之前上過 Excel 與 VBA 課程,或是 Python 基礎語法的課程,本課程都適合你/妳

課程大綱

1. 如何使用 openpyxl 與 xlwings套件
2. Cells, Range 函數的替代方案
4. 計算移動平均(簡單、加權、指數移動平均)
5. VBA Macro (巨集) 與 Python 的替代方案
6. 用 Python 畫圖表
7. 用 VBA Macro 呼叫 Python
8. 用 Python 呼叫 VBA Macro
9. 資料處理: Python 資料結構複習
- list (清單)
- dict (字典)
- tuple (元組)
- set (集合)
10. 資料處理: numpy, pandas 與 Excel 的串接
11. 進階專題
- 風險值計算(Value at Risk)
- 用 Excel 跑回測 (Back Testing)
- 通道套利策略 (Donchian channel / Bollinger Band)
12. 用 Python 截取網頁的資料並存入 Excel 中

*課綱規劃中,未來可能會更動


課程應用

本課程的目的是希望無論學員來自任何領域,無論之前學過 VBA 或是 Python,都能夠理解兩者的特性,以及如何整合兩者的特點實作出解決方案

適合對象

1. 工作上會需要用到大量 Excel 的人
2. 具備基本的電腦操作能力
3. 對寫程式有興趣者
4. 對 VBA 語言失望/充滿怨恨者
5. 對Python或 VBA 語法有基礎的認知者佳

開發環境

近期班次

  • 第295期 開課日期:2018.03.18 確定開課

    上課時間:每週(六)(日)
    4:30 PM ~ 6:30 PM
    上課日期:2018.03.18 ~ 2018.04.15
    學費:新生新台幣3500元整

    詳細資訊

  • 注意事項

    • 上課地點:台灣大學資訊工程學系系館 詳細位置;教室號碼將於開課前一日公佈於官網"最新消息"中。
    • 上課教材:開課後將公布教學網站給同學查閱。
    • 結業狀況:請上官網”結業名單”查閱是否合格及可領取證書進度。

    講師介紹

    美國加州大學 電機系學士

    臺灣大學 資訊網路與多媒體研究所碩士

     

    經歷

    現任Ruby on Rails工程師

    多年網頁程式設計經驗

    研究領域 多媒體資訊檢索、電腦視覺、人機互動

    專長 HTML、Javascript、Ruby / Ruby on Rails、Python、VBA

    教學經驗 台大資工系電腦圖學課助教