用 Python 操作 Excel 的入門程序
用 Python 操作 Excel 的入門程序
操作說明 : 利用 Python Code 快速建立多個 Excel 檔案
Code 內容如下 :
執行後快速建立 10 個 Excel 檔案如下圖
Code 說明
這段 Python 程式碼的功能是:使用 openpyxl 套件,在指定資料夾中建立 10 個 Excel 檔案,每個檔案的檔名格式為 編號_檔案XX.xlsx,例如 編號_檔案01.xlsx。
🔍 一行一行說明:
from openpyxl import Workbook
➡ 從 openpyxl 套件匯入 Workbook 類別,這是用來建立新的 Excel 活頁簿(Workbook)的。
names=["檔案01","檔案02","檔案03","檔案04","檔案05","檔案06","檔案07", "檔案08", "檔案09","檔案10"]
➡ 定義一個 names 清單,裡面包含 10 個字串,分別是要用來命名檔案的代號。
for i in names:
➡ 用 for 迴圈依序取出 names 清單中的每個檔名(如 "檔案01", "檔案02"...)指派給變數 i。
wb = Workbook()
➡ 建立一個新的 Excel 活頁簿(Workbook 物件),命名為 wb。
filename=fr"d:\VSC\python\code\1\test\編號_{i}.xlsx"
➡ 使用 f-string 來產生一個檔案路徑字串,格式為:
d:\VSC\python\code\1\test\編號_檔案01.xlsx
其中 i 會被取代為對應的檔案名稱(例如 "檔案01")。
⚠ 注意:fr"" 是一種同時支援「原始字串(raw string)」和「格式化字串(f-string)」的寫法,避免 \ 被當成跳脫字元解釋。
wb.save(filename)
➡ 將新建立的活頁簿儲存成 .xlsx 檔案,檔名為上面指定的 filename。
✅ 結果
在 d:\VSC\python\code\1\test\ 資料夾中,會產生以下 10 個空白的 Excel 檔案:
編號_檔案01.xlsx
編號_檔案02.xlsx
...
編號_檔案10.xlsx
📌 備註
-
需要安裝
openpyxl:pip install openpyxl -
確認目錄存在:執行前請確認
d:\VSC\python\code\1\test\這個路徑是否存在,否則會出現錯誤。
補充說明 openpyxl :
當然可以!以下是對 openpyxl 的詳細說明,適合初學者理解:
📘 openpyxl 是什麼?
openpyxl 是一個 Python 套件,用來 讀取、寫入和修改 Excel .xlsx 檔案(也就是 Excel 2007 以後的格式)。
它是 Python 中操作 Excel(特別是 .xlsx 格式)的最常用工具之一,官方網站為:
🔗 https://openpyxl.readthedocs.io
✅ openpyxl 能做什麼?
使用 openpyxl,你可以:
| 功能 | 說明 |
|---|---|
| 📄 建立 Excel 檔案 | Workbook() 產生新檔案並儲存 |
| 🧾 開啟現有 Excel 檔 | 使用 load_workbook() |
| 📝 編輯儲存格資料 | 修改儲存格內容、公式 |
| 📊 設定樣式 | 如字型、顏色、邊框、對齊方式等 |
| 🗂️ 多工作表處理 | 建立/刪除/切換不同的工作表 |
| 📈 插入圖表 | 建立折線圖、長條圖、圓餅圖等 |
| 🔒 鎖定工作表 | 設定密碼保護等安全功能 |
| 📅 儲存格資料類型處理 | 日期、數字、字串、布林值等 |
🛠️ 如何安裝?
使用 pip 安裝:
pip install openpyxl
🧪 簡單範例
1️⃣ 建立 Excel 檔案並寫入資料
from openpyxl import Workbook
wb = Workbook()
ws = wb.active # 取得目前活頁簿的第一個工作表
ws['A1'] = 'Hello'
ws['B1'] = 'World!'
wb.save('hello.xlsx') # 儲存檔案
2️⃣ 讀取 Excel 檔案內容
from openpyxl import load_workbook
wb = load_workbook('hello.xlsx')
ws = wb.active
print(ws['A1'].value) # 輸出: Hello
print(ws['B1'].value) # 輸出: World!
⚠ 注意事項
-
openpyxl只能處理.xlsx檔案,不能處理舊的.xls(Excel 2003 前的格式)。 -
不支援 VBA 宏(macro)或
.xlsm中的宏內容。 -
如果需要處理
.xls或需要讀取巨量資料,建議考慮其他工具如xlrd,xlwt,pandas, 或pyxlsb。
🧭 官方文件連結
-
📚 中文參考(社群翻譯版):https://openpyxl.readthedocs.io/zh/stable/
留言
張貼留言