MENU
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
カテゴリー
  • IT関連 (623)
    • Bootstrap (2)
    • クラウド (4)
    • サーバー技術 (185)
    • ストレージ (7)
      • NetApp (7)
    • ネットワーク技術 (91)
      • Cisco (36)
      • Juniper (18)
      • 負荷分散装置 (17)
    • パソコン関連 (92)
      • MAC (25)
      • Windows (54)
    • プログラミング (154)
      • Ansible (11)
      • C言語 (23)
      • Python (111)
        • Django (20)
    • 仮想化 (88)
      • Docker (63)
      • VMware (23)
  • VPS (200)
    • ABLENET VPS (16)
    • Amazon Lightsail(VPS) (2)
    • ConoHaVPS (37)
    • mixhostVPS (4)
    • WebARENAIndigo (16)
    • XServerVPS (34)
    • お名前.com VPS (12)
    • さくらのVPS (24)
    • カゴヤクラウドVPS (13)
    • シンVPS (7)
  • レンタルサーバー (56)
    • エックスサーバー (38)
  • 光回線 (8)
  • 技術スキルアップ開発・学習 (7)
    • Envader (2)
    • RareTECH (2)
    • Udemy (3)
もう現役20年超えましたー。経験値ならだれにも負けないエンジニア技術ブログ
インフラエンジニアの技術LOG
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
インフラエンジニアの技術LOG
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
  1. ホーム
  2. IT関連
  3. プログラミング
  4. Python
  5. 【Python】openpyxlでExcelの文字書き込みと色・サイズ・フォント変更をする方法

【Python】openpyxlでExcelの文字書き込みと色・サイズ・フォント変更をする方法

2020 5/29
Python
2020年4月15日2020年5月29日

Pythonのライブラリ「openpyxl」を使用して文字を編集するコードをまとめました。

文字の色の変更、サイズ変更、フォント変更はExcelではよく使用するので参考にしてください。

目次
安くて高速!高性能VPSで快適開発!
最速5分でサーバー構築
>>>こちらをチェック

エンジニア必見! 技術力を伸ばすVPS徹底比較
>>>VPS比較

「openpyxl」でExcelの文字(色・サイズ・フォント)を変更するプログラム

openpyxlを使用して、Excelの文字を編集する際は以下のコードを利用します。

import openpyxl as px

ws['A1'].font = px.styles.fonts.Font(color='FF0000')

コードは「openpyxl」をインポートし、4行目のコードを書くだけで文字を編集することができます。
また、関数を使用してコードを簡単に使用することも可能です。

import openpyxl as px
from openpyxl.styles import Font

ws['A1'].font = Font(color='FF0000')

関数を使用したコードは最後に書いているので参考にしてください。

文字の色を変更するコード

文字の色を変更する場合は「color」コマンドを使用します。
色のコードは以下のサイトなどで確認することができます。

https://www.colordic.org/

以下は「テスト」という文字の色を赤色に変更するコードとなります。

※excel_collor.py

import openpyxl as px

book = px.Workbook()
book.save('sample.xlsx')

wb = px.load_workbook('sample.xlsx')
ws = wb['Sheet']

#文字列記載
ws['A1'].value = 'テスト'

#文字の色を変更
ws['A1'].font = px.styles.fonts.Font(color='FF0000')

wb.save('sample.xlsx')
print('文字作成_完了')

※実行結果

PS C:> python .excel_collor.py
文字作成_完了
PS C:> 

テストの文字の色が赤色になっていることが確認できます。

文字のサイズへ変更するコード

文字のサイズを変更する場合は17行目で追記している「size」コマンドを実行します。
数値を変更することで自由に文字の大きさを変更することができます。

文字のサイズ変更は「テスト2」のコードを参考にしてください。

※excel_collor.py

import openpyxl as px

book = px.Workbook()
book.save('sample.xlsx')

wb = px.load_workbook('sample.xlsx')
ws = wb['Sheet']

#文字列記載
ws['A1'].value = 'テスト'
ws['A2'].value = 'テスト2'

#文字の色を変更
ws['A1'].font = px.styles.fonts.Font(color='FF0000')

#文字の大きさ
ws['A2'].font = px.styles.fonts.Font(size=50)

wb.save('sample.xlsx')
print('文字作成_完了')

※実行結果

PS C:> python .excel_collor.py
文字作成_完了
PS C:> 

以下で「テスト2」の文字のサイズが変更されていることが確認できます。

フォントを変更するコード

文字のフォントを変更する場合は「name」コマンドを使用します。

デフォルトが「MSPゴシック」となっているので、以下はフォント変更で「メイリオ」としています。
フォントの変更は「テスト3」のコードを参考にしてください。

※excel_collor.py

import openpyxl as px

book = px.Workbook()
book.save('sample.xlsx')

wb = px.load_workbook('sample.xlsx')
ws = wb['Sheet']

#文字列記載
ws['A1'].value = 'テスト'
ws['A2'].value = 'テスト2'
ws['A3'].value = 'テスト3'

#文字の色を変更
ws['A1'].font = px.styles.fonts.Font(color='FF0000')

#文字の大きさ
ws['A2'].font = px.styles.fonts.Font(size=50)

#フォント変更
ws['A3'].font = px.styles.fonts.Font(name='メイリオ')

wb.save('sample.xlsx')
print('文字作成_完了')

※実行結果

PS C:> python .excel_collor.py
文字作成_完了
PS C:> 

以下で、文字のフォントが「メイリオ」に変更されたことが確認できます。

単体の文字の色・サイズ・フォントを設定

一つの文字列に上記の変更コマンドをまとめて実行する方法はコマンド間に「,」カンマを使用します。

以下のコードは、「テスト」の文字に赤色・文字サイズ50・フォントを「メイリオ」として設定しています。

※excel_collor.py

import openpyxl as px

book = px.Workbook()
book.save('sample.xlsx')

wb = px.load_workbook('sample.xlsx')
ws = wb['Sheet']

#文字列記載
ws['A1'].value = 'テスト'

#文字の色を変更
ws['A1'].font = px.styles.fonts.Font(color='FF0000',size=50,name='メイリオ')

wb.save('sample.xlsx')
print('文字作成_完了')

プログラム実行後、「テスト」という文字が変更されていることが確認できます。

関数を使ってコードを簡単にする

また、以下のようにコードを毎回書くとめんどくさい方。

ws['A1'].font = px.styles.fonts.Font(color='FF0000')

「px.styles.fonts.Font」を省略して「Font」というコードでプログラムを実行することができます。
これを使用する場合は、以下のコードを使用します。

from openpyxl.styles import Font

これを使用することにより、長い文字列は使用せず、「Font」とコードを省略することができます。

import openpyxl as px
from openpyxl.styles import Font

book = px.Workbook()
book.save('sample.xlsx')

wb = px.load_workbook('sample.xlsx')
ws = wb['Sheet']

#文字列記載
ws['A1'].value = 'テスト'

#文字を編集
ws['A1'].font = Font(color='FF0000',size=50,name='メイリオ')

wb.save('sample.xlsx')
print('文字作成_完了')

エクセルの編集コード(罫線・セルの結合・背景色変更)を合わせたプログラム

最後に以下のコードで、これまでの罫線・セルの結合・背景色の変更を使用したプログラムと合わせたプログラムの作成例をまとめています。

罫線等のプログラム作成の参考記事は以下を参考にしてください。

あわせて読みたい
【Python】openpyxlでExcelのセルの背景色を変更する方法 Pythonでエクセルの背景色を変更するコードの書き方をまとめました。 単体と指定範囲でのコードの書き方を記載しているので参考にしてください。 「openpyxl」でExcelの...

※excel_line.py

import openpyxl as px
from openpyxl.styles import Border, Side, PatternFill, Font

book = px.Workbook()
book.save('sample.xlsx')

wb = px.load_workbook('sample.xlsx')
ws = wb['Sheet']
 
side1 = Side(style = 'thick', color='000000')

#罫線作成
for rows in ws['A1':'D5']:
    for cell in rows:
        cell.border = Border(left = side1, right = side1, top = side1, bottom = side1)

#文字列記載
ws['A5'].value = 'テスト'

#セルの結合
ws.merge_cells('A2:D4')

#文字の色を変更
ws['A5'].font = Font(color='FF0000',size=50,name='メイリオ')

## 背景色を変更
for rows in ws['A5':'D5']:
    for cell in rows:
        cell.fill = PatternFill(patternType='solid',fgColor='D1FE7B',bgColor='D1FE7B')

## シートに設定
#ws['A5:D5'].fill = fill


wb.save('sample.xlsx')
print('罫線の記載完了')

※実行結果

PS C:> python .excel_line.py
罫線の記載完了
PS C:> 

罫線等を作成したExcelの作成ができたことを以下で確認できます。

openpyxlを使用したExcelの文字の編集は以上となります。

エンジニアスキルをアップする勉強法

ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。

あわせて読みたい
現役エンジニアがおすすめするVPSレンタルサーバ比較(高速SSD限定) 格安VPS比較(2025年最新版)

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

コメント

コメントする コメントをキャンセル

email confirm*

post date*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)



検索
カテゴリー
新着記事
  • XServerVPS アニメ風 男の子 プログラミングをしている VPSを利用している 楽しそうにしている
    XServerVPSで証明書(SSL)を取得する方法
    2025年3月24日
    XServerVPS
  • レンタルサーバ アニメ風 女の子 楽しんでパソコンをしている 目がキラキラ
    WordPressがレンタルサーバよりVPSで利用する方がおすすめの理由
    2025年3月19日
    VPS
  • VPS レンタルサーバー アニメ風 女の子 プログラミングをしている VPSを利用している 楽しそうにしている
    VPSとクラウドの違いとは?初心者向けにわかりやすく解説
    2025年3月5日
    VPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSはWindows serverを利用できない。その理由と利用できるOSは?
    2025年3月4日
    シンVPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSでゲームを利用する環境はあるのか
    2025年3月4日
    シンVPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSのサイトの表示速度は他社に比べて早いのか?
    2025年3月4日
    シンVPS
目次
目次