Pythonでエクセルの背景色を変更するコードの書き方をまとめました。
単体と指定範囲でのコードの書き方を記載しているので参考にしてください。
「openpyxl」でExcelのセルの背景色を変更する方法
openpyxlでExcelのセルの背景色を変更する方法は「fill」コマンドを使用します。
以下はfillコマンドを使用した例となります。
import openpyxl as px fill = px.styles.PatternFill(patternType='solid',fgColor='D1FE7B',bgColor='D1FE7B')
importでopenpyxl→「px」を指定し、fillコマンドで「px.styles.PatternFill」を定義します。
「Excel」セル単体の背景色変更
以下では、セル単体の背景色を変更する場合のコードとなります。
※excel_collor.py
import openpyxl as px from openpyxl.styles import Border, Side book = px.Workbook() book.save('sample.xlsx') wb = px.load_workbook('sample.xlsx') ws = wb['Sheet'] ## 背景色を変更 fill = px.styles.PatternFill(patternType='solid',fgColor='D1FE7B',bgColor='D1FE7B') ## セルの指定 ws['A5'].fill = fill wb.save('sample.xlsx') print('セルの背景色変更完了')
エクセルを作成後、11行目で背景色のカラーを設定し、14行目で目的のセルを指定します。
※実行結果
PS C:> python .excel_collor.py セルの背景色変更完了 PS C:>
エクセルを開くと「A5」のセルの背景色が変わったことが確認できます。
「Excel」セル指定範囲の背景色変更
以下では、セルを範囲指定し、背景色を変更するコードとなります。
範囲指定する場合は「for」分を利用して作成すると便利です。
※excel_collor.py
import openpyxl as px from openpyxl.styles import Border, Side book = px.Workbook() book.save('sample.xlsx') wb = px.load_workbook('sample.xlsx') ws = wb['Sheet'] ## 背景色を変更_範囲指定 for rows in ws['A5':'D5']: for cell in rows: cell.fill = px.styles.PatternFill(patternType='solid',fgColor='D1FE7B',bgColor='D1FE7B') wb.save('sample.xlsx') print('セルの背景色変更完了')
※実行結果
PS C:> python .excel_collor.py セルの背景色変更完了 PS C:>
指定範囲「A5~D5」でセルの背景色が変更されたことが確認できます。
Excelの罫線とセルの結合を合わせたコード
最後に前回、罫線とセルの結合を実施したコードに今回の背景色を合わせたコードとなります。
※範囲指定
import openpyxl as px from openpyxl.styles import Border, Side 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.merge_cells('A2:D4') ## 背景色を変更_範囲指定 for rows in ws['A5':'D5']: for cell in rows: cell.fill = px.styles.PatternFill(patternType='solid',fgColor='D1FE7B',bgColor='D1FE7B') wb.save('sample.xlsx') print('罫線の記載完了')
※実行結果
PS C:> python .excel_line.py 罫線の記載完了 PS C:>
以下で、罫線とセルの結合、そして範囲指定でセルの背景色が変更されたことが確認できます。
openpyxlを使用したセルの背景色を変更するプログラムのプログラムとなります。
サーバーを構築するならVPSがおすすめです。
エンジニアのオンライン学習
ITエンジニアにおすすめの教材、オンラインスクールです。
無料からエンジニアの学習ができる教材などまとめているので参考にしてください。
おすすめオンライン教材 | |
自宅で学習ができるオンラインスクール | |
ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。
コメントを残す