【基本】シートの操作

エクセルを編集する上でシート操作を使うことは多いと思います。なのでここではopenpyxlでできるシート操作をいくつか紹介したいと思います。

 

1.シートの取得

シートの取得とは操作するシートを指定することです。シートの取得方法は以下の3通りがあります。

方法書き方例特徴
aシート名を指定a = wb[“3月”]・書き方が分かりやすい
・シートの順番が変わっても変更不要
bインデックスで指定wb.worksheets[4]・シート名に左右されない
・シート番号は0からカウントされることに注意
cアクティブシートを取得c = wb.active自由度は低いが簡単

次の画像は最後に「6月」シートをアクティブにしていた場合の以下のコード実行結果です。

from openpyxl import load_workbook
wb = load_workbook('C:/Users/1/Desktop/python/openpyxl/シート操作.xlsx')
#パターンa
a = wb["3月"]
a.cell(row = 1, column = 1).value = "パターンa"
#パターンb:インデックス番号に「4」を指定しているので、0,1,2,3,4となり左から5番目の「5月」シートを取得
b = wb.worksheets[4]
b.cell(row = 1, column = 1).value = "パターンb"
#パターンc:ファイルを閉じる直前に選択していた「6月」シートを取得
c = wb.active
c.cell(row = 1, column = 1).value = "パターンc"
wb.save('C:/Users/1/Desktop/python/openpyxl/シート操作.xlsx')

正しく実行されると指定したシートに文字が入力されます。

 

2.シートの作成

新規シートはcreate_sheet()で作り、()内の引数titleにシート名を書きます。
例として「1.シートの取得」で使用したファイルに「7月」シートを作成すると次のようになります。

from openpyxl import load_workbook
wb = load_workbook('C:/Users/1/Desktop/python/openpyxl/シート操作.xlsx')
#新たに「7月」シート作成
d = wb.create_sheet(title="7月")
wb.save('C:/Users/1/Desktop/python/openpyxl/シート操作.xlsx')

 

3.シートの削除

シートを削除したい場合はremove()です。Excelファイルを新しく作成した際に初期からある「Sheet1」を消したい場合などに使用します。ここでは「2.シートの作成」で作った「7月」シートを削除してみます。

from openpyxl import load_workbook
wb = load_workbook('C:/Users/1/Desktop/python/openpyxl/シート操作.xlsx')
#削除するシート名を指定
wb.remove(wb["7月"])
wb.save('C:/Users/1/Desktop/python/openpyxl/シート操作.xlsx')

 

4.終わりに

操作したいシート取得の書き方シートの作成・削除コマンドの使い方を紹介しました。新しくExcelファイルを作成するうえで、これらの操作は使用頻度が多いのでよく覚えておきましょう。

Comments

コメントを残す

PCスキル備忘録をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む