2021-01-04

【備忘録】Pandas で Excel マクロファイルが読めない!

Pandas で Excel マクロファイル (.xlsm の拡張子のファイル)を読み込んで作表している Python アプリが、Excel マクロファイルを読み込まなくなりました。GUI アプリでエラー処理が甘く、読み込まない理由が判らなかったのですが、PyCharm 上でアプリを起動してエラーメッセージを見ると、下記のメッセージでした。

ValueError: Your version of xlrd is 2.0.1. In xlrd >= 2.0, only the xls format is supported. Install openpyxl instead.

なるほど、読み込み処理には xlrd [1] を使っていたのかと、さらに調べて納得しました [2]

解決策は、pip で openpyxl [3] をインストールして、下記のように変更します [4]

df = pd.read_excel(
     filename,
     engine='openpyxl',
)

エラーメッセージを読めば判ることですが、一応、備忘録としました。

参考サイト

  1. xlrd — xlrd 2.0.1 documentation
  2. pandas.read_excel — pandas 1.2.0 documentation
  3. openpyxl - A Python library to read/write Excel 2010 xlsx/xlsm files — openpyxl 3.0.5 documentation
  4. python - xlrd.biffh.XLRDError: Excel xlsx file; not supported - Stack Overflow [2020-12-11]

 

ブログランキング・にほんブログ村へ bitWalk's - にほんブログ村

0 件のコメント: