投稿者 yamaV1.02β  (社会人) 投稿日時 2009/5/8 19:39:47
魔界の仮面弁士さん、回答ありがとうございます。

>初級講座「第44回 周辺にあるテクノロジ」4.Excelの操作 のコードの途中でエラーになります。
の執筆は rucio(るきお)さんで、
>http://rucio.groupsite.jp/commu/ThreadDetail.aspx?ThreadId=242
にあるのが、neptune さんの投稿ですね。


サイト作成者=rucioさんでありましたか。
勘違いいたしました。ご指摘ありがとうございます。

>まず、エラーが発生するのは、開発環境ですか? 実行環境ですか?

44回までの学習では{開発環境|実行環境}について理解が及んでいるか心もとないのですが、ソリューションエクスプローラを右クリックした「発行(B)...」を実行してできる \bin\Releaceフォルダ内の.exeファイルを実行環境。VB_2008_Expressを立ち上げて操作する環境を開発環境として検証しました。

結果は同様のエラーが発生しました。


それから、複数のバージョンの Excel を同一環境にインストールしていませんか?
(あるいは、開発環境のExcelバージョンと、実行環境のExcelバージョンが一致していないとか)

!!!ご明察のとおりxl2000 と xl2003をインストールした環境で作業しています。

以下のコードで作成されるブックのバージョンを確認したところxl2000でした。

        Dim Excel As New Microsoft.Office.Interop.Excel.Application
        Dim Book As Microsoft.Office.Interop.Excel.Workbook
        Dim Sheet As Microsoft.Office.Interop.Excel.Worksheet

        '▼前処理
        Book = Excel.Workbooks.Add '新規ワークブックを作成
        Excel.Visible = True
        Stop
        Debug.Print(Excel.Version)
        Sheet = Book.Worksheets(1) '最初のワークシートを選択
    ・・・

>それから、複数のバージョンの Excel を同一環境にインストールしていませんか?

このご指摘が当たっているようです。

さて、


さて、


しばらく考えましたが、原因はわかったものの、
        Dim Excel As New Microsoft.Office.Interop.Excel.Application
の部分で xl2003 が作成されるようにする方法がわかりません。

「複数のバージョンの Excel を同一環境にインストール」をやめるべきでしょうか。

どんなものなのでしょう。