Excel環境の再現にとらわれ過ぎず、Excelとの共存も視野に入れた検討を
引き続き行われたこの日最後のセッションでは、グレープシティの森谷勝氏が「現場の課題から見える脱Excelの分かれ目とソリューション」と題するセッションを実施。グレープシティに寄せられるユーザーからの相談内容に基づき、Excel活用にまつわる課題をピックアップして整理したのち、その解消に向けたシステム化の取り組みに関するポイントを解説した。
Excelの運用をめぐる課題としてまずあげられるのが、Excelファイルを複数人で共有しているために同時編集ができないことだ。もっともこの問題自体は、必ずしもシステム化によらずとも、クラウドサービスなどを利用することで解決できる可能性もある。しかし、年々Excelデータが肥大化を続けている問題や、Excelデータの二次活用をめぐる要求、あるいは現場で多用されているVBAコードを作成者以外がメンテナンスできないという属人化の問題なども顕在化しており、それら課題の解消を考えるうえでは、Excel業務のシステム化が最も有力な選択肢となる。
「ただし、単純にシステム化によって"脱Excel"を図るよりは、Excelを継続的に利用しつつそれと連携するシステム構築したいと考えるお客さまの相談も実際には多く、例えばExcelで扱っているデータは部署単位で管理できていればいいのか、部署横断での利用が望まれるのか、あるいは同時編集の問題がどの程度業務効率の低下につながっているのかなど、Excelのデータ活用や運用をめぐる諸事情を詳細かつ複合的に吟味して、最適なシステム化の方策を検討することが重要です」と森谷氏は語る。
そうした中、ユーザーにとって1つの有効な選択となり得るのが、機能要件に沿ったシステム化のアプローチだ。これについて森谷氏は「『表』としてのExcelからのシステム化」「Excel帳票からのシステム化」「脱ExcelではなくExcelと共存するシステム化」という3つのアプローチを紹介。そのポイントを解説し、そこで推奨されるグレープシティのコンポーネント製品を紹介する。
まず「表」としてのExcelからのシステム化だが、Excelにおける表の利用には大きく2つのパターンがある。1つは列ごとに項目が決まっているケース。「このような場合には、スプレッドシートコントロールでExcelの操作性を再現するよりは、グリッドコントロールへの置き換えが有効だと考えます。その理由としては、表の入出力だけに機能を絞ることができ、ページングなどグリッドコントロールにしかない機能が使えること、コーディングがシンプルであるとことなどがあげられます」と森谷氏は語り、Wijmoに含まれるFlexGridの活用を推奨する。
またもう1つのパターンは、列が可変で増減する表であるケース。こちらについては、Excelのピボットテーブルの機能が再現できるコントロールが推奨される。具体的には、Wijmoに含まれる、ピボットテーブル機能に特化したOLAPコントロール、あるいはピボットテーブル機能を備えたスプレッドシートコントロール「SpreadJS」がこれにあたる。「これら両者の比較としては、Excelに匹敵する詳細な制御などを行いたい場合にはSpreadJSが、よりシンプルな実装を行いたいというケースにはWijmoのOLAPコントロールが、それぞれ適しています」と森谷氏は説明する。
続いてExcel帳票からのシステム化については、Excelで帳票をレイアウトして印刷やPDF化の用途に供しているケースだ。これに関しては帳票ツールへのリプレースを検討するユーザーも多いが、そうするとそのツールが提供する専用のデザイナでレイアウトを作成せねばならず、使い慣れたExcelでレイアウトすることのメリットが失われてしまう。
システムにExcelファイルを取り込んで、そこにデータベースから取得した値をセットして帳票出力するという流れを想定するなら、Excel UIの再現性が高く、PDF出力にも対応するSpreadJSの利用が有効だ。一方、DioDocs for ExcelにもExcelを読み込んで帳票化する機能が実装されており、テンプレート構文という文字列をExcelシートのセルに記述しておけばデータソースから構文の指定に沿って値をセットしてくれる。
「特にDioDocs for Excelは、.NET環境で動くサーバーサイドに実装する、UIを持たない製品であり、バッチ処理やサービスプログラムとして動くという意味では、よりExcel帳票作成に向いているものといえます」と森谷氏は語る。
そして、脱ExcelではなくExcelと共存するシステム化だが、このアプローチにおいてもサーバーサイドでExcelファイルを操作できるDioDocs for Excelが極めて有効なツールとなる。それについては、システムコーディネイトによる先のセッションで示された事例からも明らかだろう。DioDocs for Excelでは、Excelに依存することなく、Excelファイルを作成・編集することが可能。Microsoft AzureやAWS(Amazon Web Services)、GCP(Google Cloud Platform)などのパブリッククラウドに配置される.NETアプリケーションで利用でき、仮想マシンやコンテナ、サーバーレスなどの方法で配備できる点もその大きなアドバンテージだといえる。
「Excel業務のシステム化にあたっては、複雑な実装となり、工数もかさむExcel環境の再現にとらわれ過ぎず、Excelとの共存も視野に入れた検討が望ましいと考えます。そこではコントロールの機能を最大限に活用し、いかにコード量を減らせるかを検討する。それが、開発コストを抑え、将来的にはシステムの保守性を高めるうえでの重要なポイントになるわけです」と森谷氏は強調する。
以上、「GrapeCity ECHO 2022」で実施された3つのセッションの模様をレポートしてきたが、イベントの最後のプログラムとして、受講者からの質問に講演者が答える質疑応答のコーナーも設けられた。そこで印象に残ったやり取りについても触れておこう。
「Excel業務のシステム化にあたり、Excelとの共存を考える場合、システム化する部分と、引き続きExcelを利用する部分についての切り分けをどのような基準で判断すべきか」という質問が受講者から寄せられた。
これに対しまず井上氏は「そこは、ExcelのデータとUIを含めたかたちで機能として実装すべきかどうか、要するにユーザーがシステム上でデータ入力を行う作業があるのなら、当然ExcelライクなUIを含めてシステム化することになり、Excel自体はクライアント側に置いて、サーバーサイドのOneDriveなどのストレージに格納されたExcelファイルにアクセスし、何か別の処理を行うというかたちになるでしょう。そうしたUIの必要性といったところが1つのポイントになるものと思います」と答えた。
一方、赤羽根氏は「もちろん、絶対的な線引きは難しいのですが、Web化の対象は集計プロセスまでにするのが手堅いのではないかと思います。私の経験でいえば、Web画面にExcelライクなUIを実装するのは、何かと苦労が多くなってしまいます。ExcelライクなUIは実装せず、集計結果をExcelファイルで提供し、ユーザーが手元で自由にいじっていける運用が望ましいのではないでしょうか」と応じる。
さらに森谷氏は「Excelファイルにアクセスする人数や頻度がどの程度か、Excelが扱っているデータの二次利用が必要かどうかというところで、システム化するか、そのままExcelで使い続けるのか分かれ目になるのではと考えます」と語った。
DXをにらんだ全社的なビジネスデータ活用に向けた情報共有の観点からも、WebをベースとしたExcel業務のシステム化は重要なテーマと目されている。自社のデータ活用やデータ運用のあるべき姿を踏まえ、最適なシステム化の着地点を見定めていくことこそが肝要である。