【Python】openpyxlを使用したExcelのセルの幅や高さを変更・調整する方法


Pythonのライブラリ「openpyxl」を使用してセルの幅・高さを調整するコードをまとめました。
こちらも、セルの設定でよく使用するので参考にしてください。


「openpyxl」でExcelのセルの幅・高さを変更するプログラム

openpyxlを使用してExcelのセルの幅・高さを変更するコードは以下となります。

#幅調整
ws.column_dimensions['A'].width =20

#高さ調整
ws.row_dimensions[1].height =60

それぞれの設定と実行結果は以下の通りとなります。

セルの幅を調整

以下ではセルの幅の調整を行うプログラムとなります。

※excel_width.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.column_dimensions['A'].width =20

wb.save('sample.xlsx')
print('Excel_幅調整_完了')

※実行結果

PS C:> python .excel_width.py
Excel_幅調整_完了
PS C:> 

実行後、セルの幅が調整されたことが確認できます。

セルの高さを調整

以下は、セルの高さを調整したプログラムとなります。
上記の幅に合わせて、追加で高さを調整しています。

※excel_width.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.column_dimensions['A'].width =20

#高さ調整
ws.row_dimensions[1].height =60

wb.save('sample.xlsx')
print('Excel_幅調整_完了')

※実行結果

PS C:> python .excel_width.py
Excel_幅調整_完了
PS C:> 

実行後、セルの高さが調整されていることが確認できます。

エクセル編集コードにセルの調整を追加したプログラム

前回のエクセル編集プログラムを利用して、今回のセルの調整するコードを追加します。

エクセル編集のページはこちらから。

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

2020年4月15日

※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.column_dimensions['A'].width = 20

#高さ調整
ws.row_dimensions[5].height = 80

#セルの結合
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')


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

※実行結果

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

以下でセルの調整を含めたエクセルの編集ができたことが確認できます。

セルの幅・高さの調整プログラムは以上となります。


関連記事


コメントを残す

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

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

ABOUTこの記事をかいた人

blank

インターネット関連のSEをやっています。 ネットワーク、サーバー、ストレージ、仮想基盤まで幅広く手を出しており、MVNOの構築経験もあります。 現在は、Pythonを使ったプログラミングの開発をしネットワークの自動化ツールを作成しています! Pythonの入門書も作成しているので、ぜひ参考にしてください!