PythonでWord文書内の表を操作する – How to handle tables in word documents using Python

PythonでWord文書内の表を操作する – How to handle tables in word documents using Python

“python-docx”を使用してWord文書内の表を操作する方法を解説します。このライブラリを使用すると、新しい表の作成、既存の表の編集、セルの操作、行の追加・削除、セル内のテキストの設定などが可能です。

新しい表の作成

新しい表を文書に追加するには、add_tableメソッドを使用します。

from docx import Document
from docx.oxml.ns import nsdecls
from docx.oxml import parse_xml
from docx.enum.table import WD_ALIGN_VERTICAL

doc = Document()

# 新しい表を作成
table = doc.add_table(rows=3, cols=3)
table.style = 'Table Grid'

# セルにテキストを追加
cell = table.cell(0, 0)
cell.text = "セル 1"

# セルの縦方向の配置を設定
cell.vertical_alignment = WD_ALIGN_VERTICAL.CENTER

# セル内のテキストを変更
cell = table.cell(1, 1)
cell.text = "新しいテキスト"

既存の表へのアクセス

既存の表を操作するには、文書内のすべての表にアクセスして選択します。

for table in doc.tables:
    # 表内のセルやテキストを操作

セルの操作

セル内のテキストを設定したり、セルのスタイルを変更したりすることができます。

cell = table.cell(1, 1)
cell.text = "新しいテキスト"

# セルのスタイルを変更
cell.paragraphs[0].alignment = WD_ALIGN_CENTER  # テキストの中央揃え

行の追加・削除

行を追加または削除することができます。

# 新しい行を追加
new_row = table.add_row().cells
new_row[0].text = "新しい行のセル"

# 行を削除
table.rows[1].clear()

列の追加・削除

列を追加または削除することも可能です。

# 新しい列を追加
for row in table.rows:
    cell = row.add_cell()
    cell.text = "新しい列のセル"

# 列を削除
for row in table.rows:
    row.cells[1].clear()

表のスタイル設定

表のスタイルを設定して、罫線、背景色、フォントなどをカスタマイズできます。

table.style = 'Table Grid'
table.autofit = False  # 自動調整を無効化

これらの手法を使用することで、”python-docx”を使用してWord文書内の表を操作し、カスタマイズすることができます。表の追加、編集、スタイル設定、行や列の操作など、多くの表に関連するタスクを自動化できます。

にほんブログ村 教育ブログへ
にほんブログ村
インターネット・コンピュータランキング
インターネット・コンピュータランキング
ブログ王ランキングに参加中!
PC関連ランキング
くる天 人気ブログランキング

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です