クラウド上のアプリケーションでもExcelファイルの入出力を可能にするライブラリ。既存のExcel帳票を読み込み、セルの内容を書き換えての出力も[PR]

2020年1月14日

顧客管理や売り上げ管理、在庫管理などさまざまな業務を支援する業務アプリケーションでは、帳票の出力、売り上げ予測、顧客名簿からの抽出など、さまざまな処理が行われます。

と同時に、その業務アプリケーションから生成されるさまざまなデータをExcelで読み込み、分析、集計、レポート作成などに活用しているケースも多くあります。

業務アプリケーションにExcelファイルの入出力機能を備えることで、定型的な処理は業務アプリケーションで行い、分析やアドホックな抽出、帳票作成のような細かなレポーティングはExcelで行うといった、効率的な役割分担が可能になるのです。

そうした目的で、業務アプリケーションに容易かつ確実にExcelファイルの入出力機能を組み込むためのライブラリが、アドバンスソフトウェアの「ExcelCreator」です。Excel本体のプログラムもライセンスも、もちろん不要。

fig.NETに対応したExcelCreator 2016の製品ページ

クラウドに対応するExcelCreator

ExcelCreatorは.NETに対応した「ExcelCreator 2016」と、Java に対応した「ExcelCreator for Java」(Windows/LinuxのどちらのJava実行環境にも対応)の2つがあります。

いずれもオンプレミスでの運用はもちろん、パブリッククラウドでも利用可能です。.NET版ではAmazon Web ServicesやMicrosoft Azureで動作を確認、Java版ではAmazon Web Servicesで動作を確認しています。

もちろん、ExcelCreatorを用いたアプリケーションをオンプレミスで開発したあと、それをパブリッククラウドで運用する、といったことも全く問題なく行えます。

いちいちプログラムを書き直すことなく、自由にExcelのレイアウトを変更

ExcelCreatorを用いると、どのようなことができるのか、あらためて紹介しましょう。

まず、アプリケーションに対して「Excelファイルの読み込み」「Excelファイルの書き込み」の機能を簡単に実装できるようになります。

しかも読み込んだExcelファイルの書式などをすべて維持したまま、指定されたセルの値だけを変更し、そのままExcelファイルとして出力することが可能になっています。

これは例えば、Excelであらかじめ帳票やレポートのフォーマットを作っておき、そこに値だけを次々に書き込んで出力できる、ということです。

アプリケーションが値を書き込むセルの位置は、そのセル自身にプレースホルダ用の値を書き込むことによる指定や、Excelでセルの名前を設定することなどで指定できるため、レイアウトの変更などによるセル位置の変化に影響されず、つねに適切なセルに書き込むことが可能。

fig

つまりプログラマは、帳票のフォーマットに合うように何度もプログラムの修正を繰り返したり、帳票レイアウトの変更のたびにプログラムを書き直すような面倒な作業から解放されるのです。

と同時に、現場の担当者が自分の要求に合う(あるいはお客様の指定に合う)帳票のフォーマットをExcelでじっくり作り込める、ということにもなります。

ExcelのレイアウトのままPDFやHTMLファイルを生成

ExcelCreatorを組み込んだアプリケーションで出力できるのはExcelファイルだけではありません。Excelファイルで設定されたレイアウトを保持したまま、PDFファイルとして出力すること、HTMLファイルとして出力することが可能です。

先ほどの例では、帳票のフォーマットに合わせたExcelファイルを読み込み、値を書き込んで出力することができることを紹介しましたが、これをPDFファイルやHTMLファイルとしても出力可能だ、ということです。

PDFファイルで出力すれば、さまざまなプリンタで容易に印刷できますし、長期保存用の帳票データとしてファイルサーバに保存するといった用途も考えられるでしょう。

HTMLファイルで出力し、それをWebサーバで公開すれば、社内のどこからでもWebブラウザで帳票データを手軽に参照できるようになります。

適切にクラウド上のWebサーバを構成すれば、取引先など社外に対しても見やすいスタイルでデータを公開することができるでしょう。

Excelファイルを次々に読み取って集計も

Excelファイルを開き、任意のセルから値を読み込むことも可能です。これを用いれば、現場に配布したExcelファイルを次々に読み取って集計するといったアプリケーションも容易に開発可能です。

fig

どのセルから値を読み込むかは、Excelで設定したセルの名前などで指定できるため、ここでもレイアウトの変更などに影響されず、つねに適切なセルから値を読み取ることができます。

そのほかExcelファイルの新規作成や値や式の入力、罫線を含む書式の設定など、Excelで可能な多くのフォーマットがプログラミングにより指定可能です。

Excelファイルの読み書きが非常に高速

ExcelCreatorは読み書きが非常に高速なのも特徴です。

開発元であるアドバンスソフトウェア自身によるベンチマークの計測では、Windows 10/Core i7/16GBメモリの環境で100列×1万行の100万セルの数値書き込みが0.49秒、文字列の書き込みが0.91秒(いずれもxlsx形式)となっており、大量データであってもほぼ瞬時に書き込みが完了する性能を備えています。

fig ExcelCreator 10.0 for .NET ベンチマークテスト(2019.12.3 Advance Software)

上記のベンチマーク3行目にある「Expressコンポーネント」とは、高速にデータを書き込むための専用コンポーネントです。より高速な処理に適しています。

.NET版ではxls対応で過去の資産も活用可能

.NETに対応したExcelCreator 2016では、現在のExcelのファイル形式であるxlsxに加えて、以前のファイル形式であったxlsファイル形式にも対応しています。これまでの資産としてxls形式のファイルがある場合でも、問題なく読み込み、書き込みなどが可能です。

と同時に、ExcelCreator 2016では最新のASP.NET MVC 5についてもVisual Studio 2019、Windows Server 2016、Windows 10、Windows 7で動作確認済みです。アドバンスソフトウェアではMVC 5のサンプルをWindows Azure上に公開しています。

figASP.NET MVC 5サンプルプログラムの実行画面

いま、業務システムはオンプレミスだけでなくクラウドへと実行環境を広げています。ExcelCreatorならば、どちらの環境でも、業務システムと現場で活用されているExcelファイルとを、シームレスにつなぐことができるのです。

ExcelCreator 2016 製品情報
ExcelCreator for Java 製品情報

(本記事はアドバンスソフトウェア提供のタイアップ記事です)

関連記事

あわせて読みたい

プログラミング言語 Excel PR




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本