python openpyxlエラー「DeprecationWarning: Call to deprecated function get_sheet_by_name (Use wb[sheetname]).」の原因と対処法

python openpyxlエラー「DeprecationWarning: Call to deprecated function get_sheet_by_name (Use wb[sheetname]).」の原因と対処法

pythonで、ライブラリopenpyxlのget_sheet_by_nameを使用時にエラー「DeprecationWarning: Call to deprecated function get_sheet_names (Use wb.sheetnames)」が発生した場合の原因と対処法を記述してます。pythonのバージョンは3.8.5を使用してます。

環境

  • OS windows10 pro 64bit
  • python 3.8.5
  • openpyxl 3.0.5

エラー全文

以下のコードを実行時に発生

import openpyxl

wb = openpyxl.load_workbook("sample.xlsx")

sheet1 = wb.get_sheet_by_name('Sheet1')

エラー全文

c:/sample/sample.py:5:
 DeprecationWarning: Call to deprecated function get_sheet_by_name (Use wb[sheetname]).
  sheet1 = wb.get_sheet_by_name('Sheet1')

原因

get_sheet_by_name()は非推奨になっているため

対処法

エラーメッセージ通り「wb[sheetname]」を使用する

import openpyxl

wb = openpyxl.load_workbook("sample.xlsx")

sheet1 = wb["Sheet1"]