開発者必見! Excelデータを活用した効率的業務システムの構築

第2回Visual Studioを使ってExcelデータ生成

一般的に、社内業務アプリを開発する際、Windowsと親和性の高いVisual BasicやC#と言った言語が利用されます。そこで利用される開発環境がVisual Studioです。今回は、Visual StudioでのExcel対応アプリ開発について取り上げます。

Visual Studio上での開発

Visual StudioはMicrosoftが提供する統合開発環境です。Visual BasicやVisual C#/C++など複数の言語開発が行えるのが特徴です。業務アプリケーションと呼ばれるアプリ開発の場合、Visual Basicを利用することが多いため、非常に多くのシーンでVisual Studioが利用されています。

また、GUIをベースに優れたUIが実装されており、実際の画面イメージを想定しながら、必要最低限のコーディングで開発を進めていけるという特徴があります。

現在の最新版は、Visual Studio 2008で、無償版の配布も行われています。

Excel対応アプリケーションの開発

Excel対応アプリケーションの開発モデル

まずはじめに、Excel対応アプリケーションの開発モデルをいくつか紹介しましょう。Office 2000以降では、COMアドインモデルと呼ばれる複数のホストアプリケーションを対象にしたモデルがあります。

Office 2003以降では、.NETアセンブリドキュメントモデルや.NETアセンブリデータアイランドモデル、.NETアセンブリサーバサイドモデルといったモデルがあります。これら3つは.NET Frameworkを利用した開発が行えるのが特徴です。とくに.NETアセンブリデータアイランドモデルではXML形式に対応した保存が行え、.NETアセンブリサーバサイドモデルは.NETアセンブリデータアイランドモデルで作成したアプリケーションをサーバサイドで実行できるようになる特徴があります。

 .NETアセンブリサーバサイドモデルのイメージ
図 .NETアセンブリサーバサイドモデルのイメージ

現在Microsoftでは、Visual Studio 2005上でのExcelを含めたOfficeアプリケーション開発を支援するツールとして、⁠Visual Studio Tools for Office」を提供しています。

Excelデータを取り込む

では、具体的にExcel対応アプリケーションの開発について見てみます。

今回の目的は、

  • 外部で生成されたデータを、Excel形式に対応させること

とします。

Excelで設定できること

Excelでは、

  • ドキュメント設定(印刷サイズ、ヘッダ、フッタ、余白など)
  • データ設定(セルサイズ、配置場所など)
  • 文字設定(フォントの種類、サイズ、色など)

といった設定が可能です。

詳しくはマイクロソフトのWebサイトにて公開されています。

アプリケーション開発で必要なこと

Excel対応アプリケーションを開発するには、Excelワークブックプロジェクトと呼ばれるプロジェクトを利用するのが便利です。このプロジェクトファイルには、⁠ThisWorkbookクラス」と呼ばれるワークブックの基本単位や「SheetNクラス」と呼ばれるシートの基本単位を設定するクラスが用意されている他、上述したような各種設定を行うためのクラスが準備されています。

詳しくは、Excelワークブックプロジェクト テンプレートなどの情報が参考になります。

スクラッチ?商用ツール?

以上、Excel対応アプリケーション開発の基礎情報について紹介しました。最終的には要求仕様の確定からコーディングが肝となりますが、その際、もう1つ意識しておきたいのが開発の度合いです。

たとえば、上記で説明したようにVisual StudioおよびExcelのライセンスを持っていれば、スクラッチでオリジナルアプリケーションを開発することができます。一方で、そのための技術的スキルだったり、開発ライセンスの経費といった課題も挙がります。これらをクリアする手段として、既存のオブジェクトの利用、すなわち各種開発支援ツールの利用という選択肢があります。

ここでは、スクラッチ開発と商用ツール利用開発について、選択のポイントを紹介します。

選択基準

たとえば、小さな案件(社内のちょっとしたデータ管理向けのもの)であれば、スクラッチで開発するほうが便利ですし、ライセンス費もかかりません。しかし、

  • (クライアント側に)Excelの実行環境が必要ない
  • 大量のデータを扱う
  • 複雑な要求(小さなデータを複数条件で利用するなど)のアプリが必要

といった条件が1つでも当てはまるのであれば、現在市販されているさまざまな商用ツールを利用するほうが効果が高まります。たとえば、Excelの実行環境がない場合でも、アプリケーションの実行およびコンパイルまで行えるツールや、あらかじめ多様なシーンを想定したサンプルオブジェクトが用意されたツールなどを選ぶと良いでしょう。

もう1つの選択の基準は「運用」「保守」

もう1つ、開発時ではなく、開発後の「運用」⁠保守」といった点も選択のポイントとなります。つまり、開発が多人数になる場合、あるいは複数の企業や部署からの要求をまとめて開発する場合など、リリース後にも改修が必要になるケースでは、統一した仕様で開発しやすい商用ツールを利用するほうが効率的に開発できます。


以上、Excel対応アプリケーション開発の基本と、開発時におけるスクラッチ・商用ツール利用の選択のポイントについて紹介しました。次回は、帳票への対応をテーマに解説します。

ExcelCreator 2007

ExcelCreator 2007とは?

ExcelCreator 2007は、アドバンスソフトウェアが開発・販売するExcelファイル高速生成ツールです。Visual Studioに対応しており、サーバ上にExcelがインストールされていない環境でも、Excelファイルを生成できるのが特徴です。

シンプルなコーディング

一番の特徴は、シンプルなコーディングでExcelファイルが生成できる点です。具体的には、以下の3段階の手順のみでExcelを生成できます。

  1. Excelファイルの新規オープン
  2. セルへ値の挿入
  3. Excelファイルのクローズ

実際には次のようなコードとなります。

XlsxCreator1.CreateBook("C:\sample.xlsx",3,xlVersion.ver2007)
XlsxCreator1.Cell("A1").Value="サンプル企業"
XlsxCreator1.CloseBook(True)

この結果、sample.xlsxというExcel2007に対応したExcelファイルが生成されます。

xlsxに対応

Excel 2007から採用されている「xlsx形式」のファイルに対応しています。これにより、xlsx形式が持っている豊富な表現をそのまま利用できます。

PDF出力、ストリーム出力に対応

さらに、Excelファイル以外にPDF形式への出力が可能な他、ExcelCreator 6.0 fo .NETでは、サーバサイドからのストリーム出力にも対応しています。

カスタマイズ性の優れたExcel生成ツール

以上のように、ExcelCreator 2007は、カスタマイズ性の優れたExcel生成ツールです。独自業務アプリ開発などをする際に、効率的な開発を実現できます。

製品名:ExcelCreator 2007
問い合わせ:アドバンスソフトウェア株式会社
URL:http://www.adv.co.jp/
メール:info@adv.co.jp

おすすめ記事

記事・ニュース一覧