在生產環境中測試,無水印。
在任何需要的地方都能運行。
獲得 30 天的全功能產品。
在幾分鐘內上手運行。
試用產品期間完全訪問我們的支援工程團隊
使用Python從Excel電子表格生成Word模板提供了諸多好處,可以在各種專業和個人環境中顯著提高效率、準確性和展示效果。 透過利用自動化、自訂化和數據完整性,專業人士可以確保他們的 Word 文件成為有效的溝通工具,清楚且準確地傳達必要的信息。 其中一個可以將Microsoft Excel轉換為Microsoft Word的庫是來自Iron Software的IronXL Python套件和python-docx庫。
本文將探討從 Excel 文件生成 Word 文件所需的步驟。
創建一個名為 excelToWord.py 的 Python 文件。
添加 IronXL 和 python-docx 套件。
創建或新增 Excel 文件到專案資料夾。
使用 IronXL 閱讀 Excel 文件。
IronXL for Python是由Iron Software開發的一個強大函式庫,讓開發人員能在Python專案中建立、讀取和編輯Excel檔案(XLS、XLSX和CSV)。 以下是使用IronXL的一些主要功能和優勢:
無需 Excel 依賴:IronXL 不需要在您的伺服器上安裝 Microsoft Excel,非常適合沒有 Excel 的伺服器環境。
直觀的 API:IronXL 提供自然且直觀的 API,用於處理 Excel 文件,易於整合到您的 Python 專案中。
支援多種格式:IronXL 支援多種 Excel 檔案格式,包括 XLS、XLSX、CSV 和 TSV。
儲存格樣式:您可以使用不同的字體、大小、背景、邊框和數字格式來設計儲存格。
公式處理:IronXL 可以處理 Excel 公式,並在編輯工作表時重新計算它們。
python-docx 是一個 Python 庫,用於創建、修改和處理 Microsoft Word 文件,如 `.docx` 文件。 它提供了一個簡單的 API 來與 Word 文檔互動,允許您執行添加文字、格式化、插入表格和圖片等任務。
您可以從頭開始生成 Word 文件並添加內容,包括段落、表格、標題等。 此套件也可用於編輯單個文件。
添加和修改段落文字。 使用「運行」(在段落內具有不同樣式的文本部分)來格式化文本(例如,加粗、斜體、下劃線等)。 新增並設計各級標題。
創建具有指定行數和列數的表格。 訪問並修改表格中的個別單元格。
建立具有預定義樣式的項目符號或編號列表。
應用預定義樣式,如「標題1」、「正常」等。您也可以定義並應用自定義樣式到段落或文字。
將圖片插入指定位置的文件中。 您可以透過指定圖像的寬度和高度來調整其大小。
在進入程式碼之前,請確保您具備以下先決條件:
已安裝 Python:確保您的電腦上已安裝 Python。您可以從官方 Python 網站下載。
IronXL 已安裝:你需要安裝 IronXL 套件。 您可以使用 pip 來做到這一點。
python-docx 已安裝:你需要安裝 python-docx 套件。 您可以使用 pip 來做到這一點。
打開您喜愛的 IDE,例如 Visual Studio Code,並創建一個名為 excelToWord.py 的檔案。
使用 Pip 安裝 IronXL 和 python-docx 套件。
pip install IronXL python-docx
將範例 Excel 文件複製到代碼資料夾。 該文件包含以下數據。
使用 IronXL 載入 Excel 文件並使用以下代碼讀取所有單元格。
import ironxl
from docx import Document
ironxl.License.LicenseKey = "your license"
workbook = ironxl.WorkBook.Load("sample.xlsx")
sheet = workbook.WorkSheets[0]
# read data from excel
data = []
# Iterate through rows and columns in the Excel sheet
for row in range(0, len(sheet.Rows)):
row_data = []
for col in range(0, len(sheet.Columns)):
cell_value = sheet.GetCellAt(row, col)
print(cell_value)
row_data.append(cell_value)
data.append(row_data)
Word 文件生成過程涉及從先前的 Excel 數據中創建一個 Word 文件。
doc = Document()
# Add a title to the Word document
doc.add_heading('Excel Data Export Using Python Docx', 0)
table = doc.add_table(rows=1, cols=len(data[0]))
hdr_cells = table.rows[0].cells
for i, header in enumerate(data[0]):
hdr_cells[i].text = str(header) # Add header cells
for row in data[1:]:
row_cells = table.add_row().cells
for i, cell in enumerate(row):
row_cells[i].text = str(cell)
doc.save("sample.docx")
這裡是生成 Word 文件的完整代碼。
# Word documents from Excel data
import ironxl
from docx import Document
ironxl.License.LicenseKey = "your license"
workbook = ironxl.WorkBook.Load("sample.xlsx")
sheet = workbook.WorkSheets[0]
# read data from excel
data = []
# Iterate through rows and columns in the Excel sheet
for row in range(0, len(sheet.Rows)):
row_data = []
for col in range(0, len(sheet.Columns)):
cell_value = sheet.GetCellAt(row, col)
print(cell_value)
row_data.append(cell_value)
data.append(row_data)
# document generation process
doc = Document()
# Add a title to the Word document
doc.add_heading('Excel Data Export Using Python Docx', 0)
table = doc.add_table(rows=1, cols=len(data[0]))
hdr_cells = table.rows[0].cells
for i, header in enumerate(data[0]):
hdr_cells[i].text = str(header) # Add header cells
for row in data[1:]:
row_cells = table.add_row().cells
for i, cell in enumerate(row):
row_cells[i].text = str(cell)
doc.save("sample.docx") # save as Microsoft Word document
此 Python 腳本執行兩個主要任務。
最後,Word 文件被儲存為 sample.docx。
該腳本從Excel文件(sample.xlsx)讀取數據,進行處理,然後將數據導出到新的Word文檔(sample.docx)中的表格。 Excel 工作表的第一行用作表格標題,並將每行數據添加到 Word 文檔中作為表格中的一行。
IronXL可在附加至程式碼的有效授權檔案上運作。 用戶可以輕鬆地從授權頁面獲取試用許可。
要使用許可證,在使用 IronXL 庫之前,請按照以下方式將許可證放在代碼中的某處。
ironxl.License.LicenseKey = "Your License Key"
這段範例代碼展示了一種有效的方法,使用IronXL從Excel文件讀取數據,然後使用python-docx將該數據匯出到Word文件中。 該過程涉及兩個主要步驟:
從 Excel 提取數據:該腳本載入一個 Excel 文件並從其第一張工作表中提取數據。 它遍歷行和列以將單元格值收集到列表中,該列表可以輕鬆操作或保存。
建立和填充 Word 文件:使用 python-docx 庫,該腳本創建一個新的 Word 文件,添加標題,並將提取的 Excel 數據格式化為 Word 文件中的表格。 它會自動將 Excel 資料的第一列設為標題,剩餘的列則作為表格數據。
此方法允許將資料從 Excel 無縫轉移到 Word,這對於報告生成、資料匯出或文件自動化等任務可能很有用。 IronXL 結合用於 Excel 處理和 python-docx 用於 Word 文件創建,為在 Python 中處理這些文件格式提供了一個強大的解決方案。