表全体に格子罫線を引く方法[openpyxlでエクセル編集]

スポンサードリンク
アイキャッチ Python
過去の自分
過去の自分

openpyxlを使って罫線を引く方法はわかったけど、表全体に罫線を引きたい…。
1つ1つ設定するのはめんどうだし、ファイルによって行と列の数が違うし、
表全体にまとめて罫線を引く方法を教えて!

今の自分
今の自分

了解!
for文を使いますが、簡単で初心者にもやさしい方法をご紹介します。

openpyxlを使って表全体に格子罫線を引く方法を
Python歴3年の私が、できるだけわかりやすく解説し、解決に導きます。

スポンサードリンク

openpyxlを使って表全体に格子罫線を引くには

Side()」「Border()」と簡単なfor文を使います。まずは実行見本をどうぞ。

スポンサードリンク

実行見本

スポンサードリンク

全コード

ひとまず全コードを網羅します。解説は後ほど行います。

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

wb = openpyxl.load_workbook('input.xlsx')
ws = wb['Sheet1']

border_spec1 = Side(style='thin', color='000000')
cell_spec1 = Border(top=border_spec1, bottom=border_spec1, left=border_spec1, right=border_spec1)

for row in ws:
    for cell in row:
        ws[cell.coordinate].border = cell_spec1

wb.save('input.xlsx')
border_spec1 = Side(style='thin', color='000000')
cell_spec1 = Border(top=border_spec1, bottom=border_spec1, left=border_spec1, right=border_spec1)

for row in ws:
    for cell in row:
        ws[cell.coordinate].border = cell_spec1
スポンサードリンク

事前準備

  • openpyxlのインストール

既存のエクセルファイルを編集するには「openpyxl」のインストールが必要です。

openpyxlのインストール方法

openpyxlを初めて使用する場合は、下記コードを入力・実行して、インストールしてください。

pip install openpyxl

※openpyxlを使用したことがある場合は、このインストール作業は不要です。

スポンサードリンク

解説

罫線を設定する方法

>>7.border_spec1 = Side(style=’thin’, color=’000000′)
>>8.cell_spec1 = Border(top=border_spec1, bottom=border_spec1, left=border_spec1, right=border_spec1)

上記2行にてセルに罫線を設定することができます。

罫線を設定する基本解説は下記の記事にて行っております。詳しく知りたい方はご覧ください。

for文の解説

for row in ws:
    for cell in row:
        ws[cell.coordinate].border = cell_spec1

上記を記述することで、 表全体に罫線を設定することができます。

2重ループになっているので少し難しいですが、
わかりやすい解説は下記記事にて行っております。

その他の解説

既存ファイルを開いて保存する方法などの操作の基本解説は、下記記事で行っております。
ご参考ください。

スポンサードリンク

うまく動作しない時

エラーが出る

No such file or directory: ○○

これは、読み込むファイルやフォルダが見つからないというエラーです。
読み込むファイルのファイル名と構文のファイル名が一致しているか確認しましょう。

Permission denied: ○○

操作しようとしているファイルにアクセスできないというエラーです。
ファイルを開いている状態なので編集できない」と言っていることが多いので、開いていれば閉じて再度トライしましょう。
開いていなければ、コンピューターを再起動して再度トライしてみましょう。

Worksheet ○○ does not exist

「指定したシートがありません」というエラーです。
指定のシート名が間違っていないか、「sheet1」など先頭が小文字になっていないか確認しましょう。

その他のエラー

その他のエラーが出た場合は、エラー文をコピーしてNETで検索してみましょう。

スポンサードリンク

最後に

openpyxlを使って表全体に格子罫線を引く方法を解説いたしました。

フォントサイズの変更などにも応用できますので、ご活用ください。

最後までお読みいただき、ありがとうございました。がんばってください!

タイトルとURLをコピーしました