ここでは、本製品で提供するサンプルプログラム-Sample24-について説明します。
Sample24では、NetCOBOLのCOMクライアント機能を使って、Excelを操作する例を示します。
NetCOBOLのCOMクライアント機能では、COMオブジェクトを作成し、それを使ってCOMサーバの提供する機能をCOBOLのメソッドと同様に使用することができます。
Excelは独立したアプリケーションであるだけでなく、COMサーバとしての側面を持つため、Excelを操作するアプリケーションをCOBOLでも記述することができます。
このプログラムを動作させるためには、以下の製品が必要です。
Microsoft(R) Excel(以降、Excelと略します。)
なお、NetCOBOLのCOM機能の詳細は、“NetCOBOL ユーザーズガイド”の“COM機能”を参照してください。
注意
以降では、NetCOBOLのインストール先フォルダーをC:\COBOLとして説明しています。フォルダー名がC:\COBOLになっているところは、NetCOBOLをインストールしたフォルダーに変更してください。
概要
COBOLアプリケーションから、Excelに対して次の操作を行います。
Excelの起動と終了
Excelシートのオープン
ワークシートの選択とデータの挿入
グラフの作成
選択したシートの印刷
NetCOBOLのCOMクライアント機能では、COMサーバのメソッドやインタフェースを認識する方法として、アーリバインドとレイトバインドの2つを持ちます。
このSampleではアーリバインドを使用します。
アーリバインドを使用する場合、オブジェクトプロパティやメソッドの行内呼出しが記述できます。また、性能の面でレイトバインドの場合より優れています。反面、開発時に型ライブラリが必須となる点やCOMサーバの変更の影響を受けやすいなどの短所もあります。このプログラムではExcelの機能を使用するためCOMサーバ名EXCELを使用していますが、プログラムの翻訳に先立って、このCOMサーバ名に対して、Excelの型ライブラリを指定しておく必要があります。
なお、Excel2013の型ライブラリを参照してビルドした実行可能ファイルは、Excel2010を操作することができませんし、また、逆にExcel2010の型ライブラリを参照してビルドした実行可能ファイルは、Excel2013を操作することができません。
レイトバインドの場合の例は“6.24 COM連携-Excelを操作するプログラム(1)(Sample23)”を参照してください。
提供プログラム
Sample24.prj(プロジェクトファイル)
Sample24.cob(COBOLソースファイル)
GRAPHDATA.XLS(テスト用Excelファイル)
使用しているCOBOLの機能
使用しているCOBOLの文
DISPLAY文
IF文
INVOKE文
PERFORM文
SET文