課題解決 事例紹介

大量のExcelマクロを、webシステム(新環境)に移行

事象 大量のExcelマクロを活用していたが、まとめてwebシステムに移行することになった。
解決すべき課題 それぞれのExcelマクロは10年以上前に作成されたものが多く、多くのケースで開発担当者が退職などで既に居なくなっていた。このため、中身がブラックボックス化して不明である。
ベンダーへの相談結果 Excelは、プログラム言語(マクロ)だけではなく、関数の要素が多いことから、一般のプログラマには難解である。このため、既存Excelをベースにするのではなく、全くの新規作成を提案されたが、現場がそれでは今できていることができなくなると悲鳴を上げた。

大量の業務利用Excelマクロを活用

卸売業のF社では、社員がExcelのマクロを使って業務支援のツールを作成し、業務に役立てていました。もはや、こうしたツール無しには、今の人数で業務は回りません。

ところが、こうしたExcelマクロが増えるにつれ、作った当人が異動したり退職したりでメンテナンスが滞るようになって来ました。いわゆる、属人化による弊害です。

折から基幹システムを入れ替える話が進んでおり、これを機にExcelマクロをWebシステムに移行することにしました。

Excelマクロがブラックボックス化

早速、基幹システムを開発することになったベンダーに相談したところ、「Excelはプログラム言語がVBAと特殊であり、当社で扱っていない」「一般に、Excelはシート関数などを多様しているので、上から下に処理が流れるとは限らないことから、プログラマが読解するのが困難」等の理由で断られ、新規に作り直すよう提案されました。

改めて見直してみると、マクロ(VBA)だけで記述されているわけではなく、現場の人たちが創意工夫しながら作り上げたこともあり、関数の割合がかなり高かったのです。そして、これら関数がマクロと組み合わせて動いているため、部外者だと詳細がわからない状態で、まさにブラックボックス化しかけていました。

 

Excelならではの見える化方法

そこで当社に問い合わせがあったのですが、数が数百ファイルあったことから、計画的かつ段階的にドキュメント化しながら、順次移行する計画としました。

棚卸し

各ファイルの規模感などを記した一覧表を作ります。構造が簡単なものは、見ればロジックがわかるので、この時点でドキュメント化してしまいます。

優先度決定

続いて、どの順番で手をつけるか、優先順を決めていきます。利用頻度などの情報も、ヒアリングしながら付加して行きます。

古いファイルや、同じような用途のものは、この段階で破棄方針とします(数を減らせます)。

 

ドキュメント化(設計書作成)

ロジックは比較的単純なものが多いわりに、式の構造が複雑なケースが多いのが、Excelによるツールの特徴です。ノンコード環境ならではの課題といえましょう。

これを、視覚的にどのシートがどこを参照している、といったことを表現していきます。

プログラム言語に依存しない資料 = そのままでもメンテできる化

F社に限らず、メンテ(保守)に課題が生じて、Excelマクロから他環境に乗り換えるケースは少なくありません。

しかし、乗り換えるためには、現状どうなっているかを明らかにする(見える化する)必要があります。

ところで、見える化してしまうと属人化が解消し、「メンテに課題」で無くなってしまいます。

こうしたことから、高額なコストをかけて作り直すよりも、当面Excelでいいじゃ無いか、という着地をするケースも少なくありません。F社の場合も、ドキュメント化のルールなどを整備した結果、そのまま活用を続けています。

 

昔の古いExcelを、活用する方法

古いExcelマクロがメンテナンスできなくなる最大の理由は、ブラックボックス化することです。裏を返せば、見える化することで、ある程度慣れた人ならメンテナンス(修正)ができるようになります。

ドキュメントを読んでいる時間も、Excelを習得する時間も無い、という場合は、アウトソーシングにより、時間を買えます。

本業が忙しい等の理由で、自社対応が困難な場合は、Excel専門企業にお問合せください。