PythonのopenpyxlでExcelセルのフォントスタイルを設定する方法

Pythonのopenpyxlライブラリでは、openpyxl.stylesからインポートしたFontオブジェクトを使い、Excelセルのフォント名、サイズ、スタイル(太字、イタリック体)、色などを設定できます。


目次

Fontオブジェクトのインポートと作成

セルのフォントスタイルを操作するには、まずopenpyxl.stylesモジュールからFontクラスをインポートする必要があります。

Fontオブジェクトを生成する際に、引数として様々なスタイル属性を指定します。主な属性には、フォント名を設定するname、サイズを指定するsize、太字にするbold、イタリック体にするitalic、色を指定するcolorなどがあります。


セルへのフォントスタイルの適用

作成したFontオブジェクトは、セルオブジェクトの.font属性に代入することで、そのセルにスタイルとして適用されます。

以下の例では、新しいワークブックを作成し、セルA1に「太字のArial」、セルB2に「サイズ18のイタリック体」のスタイルをそれぞれ設定しています。

import openpyxl
from openpyxl.styles import Font

# 新しいワークブックを作成
workbook = openpyxl.Workbook()
sheet = workbook.active
sheet.title = 'Style Examples'

# 1. 太字のArialフォントオブジェクトを作成
font_style_1 = Font(name='Arial', bold=True)
# A1セルに値を書き込み、フォントを適用
sheet['A1'] = 'Bold Arial Text'
sheet['A1'].font = font_style_1

# 2. サイズ18のイタリック体フォントオブジェクトを作成
font_style_2 = Font(size=18, italic=True, color='0000FF') # 青色
# B2セルに値を書き込み、フォントを適用
sheet['B2'] = 'Large Italic Blue Text'
sheet['B2'].font = font_style_2

# 変更をファイルに保存
workbook.save('styled_workbook.xlsx')

print("styled_workbook.xlsx を保存しました。")

このスクリプトを実行すると、styled_workbook.xlsxというExcelファイルが作成され、各セルに指定されたフォントスタイルが適用されていることを確認できます。

まとめ

openpyxlでセルのフォントを装飾するには、Fontオブジェクトに必要なスタイル情報を設定し、それを対象セルの.font属性に代入します。この手順により、プログラムで生成するExcelレポートやデータの見た目を、目的に応じて自動的に整えることが可能です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次