VBAよりもPythonのほうがExcel自動化に向いている一例

VBAとPythonの比較記事第2弾を書きました。

· 1 min read
VBAよりもPythonのほうがExcel自動化に向いている一例
Photo by Gabriel Heinzer / Unsplash

私の読んだVBAの解説書にはグラフの作成機能は載っていませんでした。Webで調べてみると、出来ないことはないけれど、物凄く面倒なコードになってしまうようです。PythonではPython専用に開発されたデータビジュアライゼーションのライブラリに加えて、PlotlyというJavaScriptを用いて様々なデータ表現を美しく仕上げるライブラリが使えます。このライブラリはJupyter Notebookというマークダウンとコードの断片を記述出来る、プロンプトとエディターの中間のような便利なノートブック形式の出来るライブラリがあって、そこでもちゃんと動きます。このPlotlyとExcelのデータを読み書き出来るライブラリを組み合わせると、Excelからデータを読み込んで、オリジナルのグラフをつくり、画像としてExcelに貼り込むスクリプトが簡単に書けます。

例えばこんな表から

こんな図が作成出来るのです。

さらに、今日みつけたpygwalkerというライブラリを使うとJupyter Notebook上でデータをドラッグアンドドロップで割り付けて、まるでTebuleuという9000円ちかくするソフトウェアのように簡単にグラフが作成出来てしまいます。

このライブラリは今年の3月に最初のバージョンがgithubにコミットされたということで、これから対応出来るグラフの種類も増えて着実にバージョンアップしていくか注目です。

でも、求人要項にはVBAを使える人の募集が多い現実。実際、コードを書いてない上の人達がVBAからPythonで業務効率化で行う時代の変化に対応出来てないような気もします。