Python Excelに罫線を書く Border

スポンサーリンク

PythonではExcelに罫線・枠線を書くことができます。

今回は、「openPyXl」パッケージを使ってExcelに罫線を書く方法を解説します。

Excelに罫線を書く

準備

PythonでExcel操作をするには、「openPyXl」パッケージが便利です。「openPyXl」を事前にダウンロード・インストールしておく必要があります。

参照外部パッケージ OpenPyXLをインストールする方法

Pythonの「openPyXl」パッケージを使って、セルに罫線を書くには「styles.borders.Border」を使います。

サンプルデータ

こちらはサンプルで使用するEXCELファイルです。

 

例1. Excelに罫線(外枠)を書き込む

import openpyxl
from openpyxl.styles.borders import Border, Side

# ブックを取得
book = openpyxl.load_workbook('C:\\pg\\data.xlsx')
# シートを取得
sheet = book['Sheet1']

# 罫線(外枠)を設定
border = Border(top=Side(style='thin', color='000000'), 
                bottom=Side(style='thin', color='000000'), 
                left=Side(style='thin', color='000000'),
                right=Side(style='thin', color='000000')
)
# セルに罫線を設定
sheet['A1'].border = border

# 保存する
book.save('C:\\pg\\data.xlsx')

Excelファイル「data.xlsx」のシート「Sheet1」のセル「A1」に罫線(外枠)を設定しました。

「openpyxl.styles.borders.Border」で罫線を設定しました。ここでは罫線を外枠にするために、上下左右の4つを設定しました。

罫線の種類

top 上罫線
bottom 下罫線
left 左罫線
right 右罫線

 

style

hair 実線(極細)
thin 実線(細)
medium 実線(中)
thick 実線(太)
dashed 破線
dotted 点線
dashDot 一点鎖線
dashDotDot 二点鎖線
double 二重線
slantDashDot 斜め斜線

これでExcelで罫線を設定することができました。

例2. Excel 複数セルに罫線(外枠)を書き込む(ループ使用)

import openpyxl
from openpyxl.styles.borders import Border, Side

# ブックを取得
book = openpyxl.load_workbook('C:\\pg\\data.xlsx')
# シートを取得
sheet = book['Sheet1']

# 罫線(外枠)を設定
border = Border(top=Side(style='thin', color='000000'), 
                bottom=Side(style='thin', color='000000'), 
                left=Side(style='thin', color='000000'),
                right=Side(style='thin', color='000000')
)
# セルに罫線を設定
for row_num in range(2,4):
    for col_num in range(1,8):
        sheet.cell(row=row_num ,column=col_num).border = border

# 保存する
book.save('C:\\pg\\data.xlsx')

 

例1では1つのセルだけに罫線を設定しましたが、ここでは複数のセルにまたがって罫線を設定しました。行・列をループで設定すれば簡単に罫線を設定できます。

これで「styles.borders.Border」を使ってExcelセルに罫線を書くことができました。

 

参照:https://openpyxl.readthedocs.io/en/stable/#

以上、PythonでExcelに罫線(枠線)を書く方法でした。

コメント