PythonでExcel等で作られたxlsxファイルを処理するライブラリ「OpenPyXL」関連の検索キーワードで、このサイト『インストラクターのネタ帳』へアクセスいただく方が増えてきています。
そういった検索キーワードを拝見して、懸念していることがあります。
プログラミングをあまりご存知なく、OpenPyXLに期待しすぎているように感じる検索キーワードが、少なからずあるのです。
プログラミング言語Pythonを学ぶことはおすすめします
「Pythonが人気らしく、ちょっと気になるなぁ」
と思うのなら、是非チャレンジしてください。
Python自体の学習は、おすすめします。
Pythonは確かに学習コストが低く、仕事の自動化に使えるケースもあるプログラミング言語だからです。
ただし、OpenPyXLを使えば、Excelを自由に操作できるとは思わないでください。OpenPyXLがあればExcel VBAでできることがすべてできる、などとは決して思わないでください。
OpenPyXLはアプリケーションとしてのExcelを操作するのではなく、Excel等によって作られるXML形式のファイルを処理するライブラリです。
OpenPyXLの学習コストは低くない
プログラミング言語Pythonの学習コストは低いと感じますが、OpenPyXLを学習するハードルは、結構高いと私は感じています。
書籍等に書かれているサンプルそのままでよければ、書き写せばもちろん動くでしょう。ですがサンプルコードそのままの状態でイイというケースは、決して多くはないはずです。何らかの修正を必要とするのが普通です。
サンプルのどこをどう直せばいいのかを調べるためには、当然ながら学習が必要です。そのための学習コストが、OpenPyXLは決して低くないと感じます。
(玉石混交ながらが)Excel VBAならばネット上にたくさんの情報が存在しますが、OpenPyXLについての情報は、Excel VBAに比べかなり少ないと感じます。書籍もExcel VBAの場合、大量に出版されています。作られるコードがいまいちなことは認めますが、VBAのコードを自動的に作ってくれるマクロ記録機能が、Excelにはあります。
OpenPyXLの場合、すべてがWeb上にドキュメント化されているわけではないため、dir()関数を使ったり、ヘルプを読んだりする必要があります。そして、それらは英語です。
プログラミング経験のない方が、OpenPyXLを使ったExcel操作を素材にプログラミング学習を進めるというのは、決して楽な道ではないと私は思います。特に日本的組織で作られるようなExcelファイルの処理を自動化したい場合。
Excel VBAにできてOpenPyXLにできないことはたくさんある
OpenPyXLのほうがExcel VBAよりシンプルなコードで済む処理は確かにあるでしょうけれど、OpenPyXLにできてExcel VBAでできない処理は、(おそらく)ないはずです。
一方Excel VBAならできてOpenPyXLではできないことは、たくさんあります。
OpenPyXLはアプリケーションとしてのExcelを操作するのではなく、Excel等によって作られるXML形式のファイルを処理するライブラリに過ぎませんから。
Pythonの学習はおすすめしますが、OpenPyXLに過剰な期待を抱くのは、やめておくほうがイイと私は考えています。
最終更新日時:2023-09-06 10:34
- Newer:0のときに円を表示しないユーザー定義書式
- Older:オブジェクトの捉え方・特徴が理解できた
Home » Python » OpenPyXLの使い方 » OpenPyXLがあればExcel VBAは不要なのか