# 使用Python程式處理Excel檔案 ## 用Python處理Excel好處 1. 可以設定無人自動化 2. 可以重複使用 3. 可以給別人使用 ## 安裝開發環境 ### 1. 安裝Python 下載路徑:https://www.python.org/downloads/ ### 2. 使用pip套件管理工具安裝openpyxl #### Windows使用者安裝步驟: - 開啟`命令提示字元` - 在終端機輸入指令`pip install openpyxl` - 在終端機輸入指令`pip list`,看到openpyxl即表示安裝完成 #### macOS使用者安裝步驟: - 開啟`終端機` - 在終端機輸入指令`pip install openpyxl` - 在終端機輸入指令`pip list`,看到openpyxl即表示安裝完成  3. 安裝你需要的IDE,我推薦Visual Studio Code > 💡Tip:也可以安裝[Anaconda](https://www.anaconda.com/products/individual)這套第三方套件管理工具,來安裝openpyxl ## 名詞定義 在寫程式以前,我們先了解Excel文件在openpyxl的名詞代號 - 一個Excel**文件**就是`workbook` - Excel文件中的**分頁表**就是`worksheet` - 分頁表中的**資料儲存格**,每一格稱為`cell(row, col)`,其中row是列,col是行 ## 使用範例 我們示範第一個Python透過`openpyxl` Library來操作Excel文件的例子 1. 請先從連結中,下載要處理的範例Excel檔案 :::info 請先填問卷,讓我更了解你,問卷最後會提供 Excel 檔案連結 ::: 💡 [問卷連結](https://forms.gle/M7ocCvSHy45sP6Fq7) 2. 在這個檔案中,我們可以看到四個欄位 - `PRODUCE`: 品名 - `COST PER POUND`: 單價 - `POUNDS SOLD`: 售出數量 - `TOTAL`: 總計收入  由於它是一筆筆紀錄,我們希望做到 - 將這個表單裡的Garlic 的單價(COST PER POUND),都更正成1.99元 - 將更正後的單價文字顏色改成紅色 - 將更正後的結果,另存檔案名稱為`produceSales_update.xlsx` 請參考以下範例程式碼: ``` python= import openpyxl from openpyxl.styles import Font import os # os.chdir 是 python 切換到電腦指定路徑的方法 os.chdir(r"/Users/chaoyen/Downloads") # 請填寫自己電腦裡Excel檔案的絕對路徑 wb = openpyxl.load_workbook('produceSales.xlsx') # 請填寫要處理的Excel檔案名稱 sheet = wb.worksheets[0] # 要更正的品名與其單價 price_updates_dict = {'Garlic': 1.99} #使用for loop掃描所有A欄品名,如果比對一致,就進行更正與上色 print("Processing...") for rowNum in range(2, sheet.max_row, 1): produceName = sheet.cell(rowNum, 1).value if produceName in price_updates_dict: sheet.cell(rowNum, 2).value = price_updates_dict[produceName] sheet.cell(rowNum, 2).font = Font(color='FF0000') # 將結果另存新檔 wb.save('produceSales_update.xlsx') print("Done!") ``` ## 執行結果 1. 將以上程式碼檔名存為`process.py`,並記住它的存放檔案路徑 2. 在終端機,切換到這個python檔案的所在路徑,輸入指令`python3 process.py` > 請注意要被編輯的Excel必須是關閉狀態,不然你的Python程式沒有權限修改它  3. 更正結果後的新Excel檔案`produceSales_update.xlsx`順利生成  4. 開啟新Excel檔案`produceSales_update.xlsx`,確認結果無誤,所有的Garlic的單價都順利被更正並且標上紅色了!  ## 給更多人使用 程式做好以後,如果別人的電腦也想使用,你有三種分享方式 1. [初級] 請他的電腦也安裝Python,就可以執行你的`process.py` 2. [中級]將你的`process.py`,透過`pyInstaller`這個工具打包成.exe檔 3. [高級] 做成Web App,讓大家可以到你的網站上傳文件,處理文件後下載 我建議先以初級作法為主就好,在早期階段也比較能快速改動程式碼滿足變動需求。 ## 參考書籍  ## 有任何問題或是想學什麼 目前沒有規劃課程,但是想知道大家想學什麼 歡迎追蹤我的粉絲專頁私訊我,或來信 contact@chaoyen.me https://www.instagram.com/chaoyen.me/ ###### tags: `A100程式設計入門與Excel自動工作術`
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.