python openpyxlを使ってEXCELの枠線を作成する

pythonで、ライブラリopenpyxlのborderを使用して、EXCELの枠線を作成するサンプルコードを記述してます。pythonのバージョンは3.8.5を使用してます。
環境
- OS windows10 pro 64bit
- python 3.8.5
openpyxl使い方
openpyxlを使用すると、EXCELの操作を行うことが可能です。
まずはpipでインストールします。
pip install openpyxl
<出力結果>
Successfully installed et-xmlfile-1.0.1 jdcal-1.4.1 openpyxl-3.0.5
以下は、openpyxlのstyles.borderを使用して、EXCELのB1セルに枠線を作成サンプルコードとなります。
import openpyxl
from openpyxl.styles import Border, Side
wb = openpyxl.Workbook()
ws = wb.active
# シート名を設定
ws.title = "sheet1"
# 枠線の設定
border = Border(
left=Side(
border_style="thin",
color="3db70f"
),
right=Side(
border_style="thin",
color="3db70f"
),
top=Side(
border_style="thin",
color="3db70f"
),
bottom=Side(
border_style="thin",
color="3db70f"
)
)
ws["B2"].border = border
ws["B2"] = "mebee"
# 任意の名称で保存
wb.save('test.xlsx')
実行結果

border_styleには、thinの他にも以下が設定可能となってます。
thin – 実線(細)
midium – 実線(中)
thick – 実線(太)
dotted – 点線
dashed – 破線
double – 二重線
hair – 細かい点線
mediumDashed – 中太破線
slantDashDot – 斜め破線
dashDot – 一点鎖線
dashDotDot – 二点鎖線
また、複数のセルに一括で枠線を付ける場合は、以下のコードとなります。
import openpyxl
from openpyxl.styles import Border, Side
wb = openpyxl.Workbook()
ws = wb.active
# シート名を設定
ws.title = "sheet1"
# 枠線の設定
border = Border(
left=Side(
border_style="thin",
color="3db70f"
),
right=Side(
border_style="thin",
color="3db70f"
),
top=Side(
border_style="thin",
color="3db70f"
),
bottom=Side(
border_style="thin",
color="3db70f"
)
)
# A1 ~ E5までに枠線を付ける
for rows in ws['A1':'E5']:
for cell in rows:
cell.border = border
# 任意の名称で保存
wb.save('test.xlsx')
-
前の記事
ruby ファイルの先頭に特定文字列が含まれているものだけ抽出する 2021.03.31
-
次の記事
javascript removeでhtml要素を削除する 2021.04.01
コメントを書く