投稿時間:2004/01/23(Fri) 17:10 投稿者名:hey
URL :
タイトル:Excel 事前バインディングとバージョン依存
hey と申します。 Excel操作のための事前バインディングとバージョン依存 について 質問させて下さい。
開発環境は Windows2000 + VB6(SP5) + Excel2000 です。
こちらのサイトのサンプルを参考にさせていただきExcelデータを 読み込みフォーム上のグリッドに表示するプログラムを作りました。
Web上でいろいろ調べてみましたところ、 「配布先のExcelのバージョンに依存しないプログラムにするには Dim xlApp As Object として事後バインディングする必要がある」 というコメントをいくつか発見しました。
これはてっきり開発環境と同じバージョンのExcelがないと動かない、 という意味なのだろうと思いましたが念のため、そのプログラムを 他の2種類の環境で試してみたところ、思いの外、問題なく動作しました。
インストール先テスト環境:Windows98 + Excel97 WindowsXP + Excel2002
さて、これはどのように解釈すればよろしいのでしょうか? Excelのバージョンに依存した動作でなく、単純なデータ参照程度なら 問題ないということなのでしょうか?
---------------以下がコードの一部です--------------------
'参照設定で Microsoft Excel 9.0 Oblect Library を指定
Private Sub ReadExcel() Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet
Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Add Set xlSheet = xlBook.Worksheets(1)
'ここで既存のExcelファイル上のデータをMSHFlexGrid上のセルにコピー '(省略)
xlApp.Quit
Set xlSheet = Nothing Set xlBook = Nothing Set xlApp = Nothing End Sub
-------------------------------- 宜しくお願いします。
|