送られてきた元データのセルにある罫線を取得したい。
(新しく作ったブックにコピーするため)
なるほど…。
では今回は、
「openpyxlで罫線を取得する方法」
をできるだけわかりやすく解説いたします!
【著者情報】
Python歴3年。
入社2年目の春に先輩が突然トンズラし、業務を半分肩代わりするハメに…。
今までの1.5倍の仕事をこなせるはずもなく、苦しむ毎日。
業務効率化を模索中にPythonと出合う。
業務とPythonの相性が良く、2倍以上の効率化を実現。現在も効率化を進行中。
openpyxlで罫線を取得するには
「border_style」を使います。まずは実行見本をどうぞ。
実行見本
ひとまず、元データ・全コード・実行結果をお見せします。解説は後ほど行います。
元データ
全コード
import openpyxl
from openpyxl.styles.borders import Border, Side
wb = openpyxl.load_workbook('input.xlsx')
ws = wb['Sheet1']
left_border = ws['B2'].border.left.border_style
print(left)
left_border = ws['B2'].border.left.border_style
実行結果
事前準備
- openpyxlのインストール
既存のエクセルファイルを編集するには「openpyxl」のインストールが必要です。
openpyxlのインストール方法
openpyxlを初めて使用する場合は、下記コードを入力・実行して、インストールしてください。
pip install openpyxl
※openpyxlを使用したことがある場合は、このインストール作業は不要です。
インストールに関する詳細や、インストールができなかった場合の対処法は下記記事で解説しております。
また、既存ファイルを開いて保存する方法など、基本解説も行っておりますのでご参考ください。
解説:罫線を取得
※わかりやすさを重視しております。厳密には解釈が異なる場合がありますことをご了承ください。
left_border = ws['B2'].border.left.border_style
上記一文にて罫線(左側)を取得することができます。
罫線は、「左側・右側・上側・下側」の4種類があります。
左側以外の罫線を取得するには、下記のように記述しましょう。
right_border = ws['B2'].border.right.border_style
top_border = ws['B2'].border.top.border_style
bottom_border = ws['B2'].border.bottom.border_style
罫線の位置や線の太さについては下記記事をご参考ください。
<テンプレ>
【 変数 = ワークシートが入った変数[‘罫線を取得するセル名’].border.位置.border_style 】
取得するセル名のところは、下記のように指定することもできます。
left_border = ws.cell(column=2, row=2).border.left.border_style
結果は同じです。
<実行結果>
うまく動作しない時
エラーが出る
No such file or directory: ○○
これは、読み込むファイルやフォルダが見つからないというエラーです。
読み込むファイルのファイル名と構文のファイル名が一致しているか確認しましょう。
詳しい解説は、下記記事をご参考ください。
Permission denied: ○○
操作しようとしているファイルにアクセスできないというエラーです。
「ファイルを開いている状態なので編集できない」と言っていることが多いので、開いていれば閉じて再度トライしましょう。
詳しい解説は、下記記事をご参考ください。
Worksheet ○○ does not exist
「指定したシートがありません」というエラーです。
指定のシート名が間違っていないか、「sheet1」など先頭が小文字になっていないか確認しましょう。
詳しい解説は、下記記事をご参考ください。
○○ is not defined
今まで出てきていない変数などを処理しようとした時に出るエラーです。
変数名などが間違っていないかチェックしましょう。
詳しい解説は、下記記事をご参考ください。
その他のエラー
その他のエラーが出た場合は、エラー文をコピーしてNETで検索してみましょう。
最後に
openpyxlで罫線を取得する方法を解説いたしました。
罫線を別シートや別ブックにコピーする際に便利かと思います。
ご活用ください。
当ブログでは、Pythonに関する情報を配信しております。
この記事がわかりやすいと感じた方は、他の記事も読んでいってください。
挫折せずにPythonを独学で学習する方法は特におすすめです。
最後までお読みいただき、ありがとうございました。がんばってください!