C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■98311 / 親階層)  Excelを開くコードで例外が出る
□投稿者/ masaX (10回)-(2021/10/30(Sat) 12:20:22)

分類:[VB.NET/VB2005 以降] 

すみません
先日、エクセルが文字化けする件でアドバイスをいただいて無事に開く事ができるようになったのですが
勉強の為にその後、レイトバインディングでは無い方法(普通の方法になるんですか?)でExcelを開くプログラムでも
テストしてみたくて、ここのサイトの「既存の Excel ブックを開く」のコードをそのまま使ったプログラムを
書いてみたのですが

Imports Microsoft.Office.Interop
Public Class Form1
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        ' Excel.Application の新しいインスタンスを生成する
        Dim xlApplication As New Excel.Application()
        Dim xlBooks As Excel.Workbooks

        ' xlApplication から WorkBooks を取得する
        xlBooks = xlApplication.Workbooks

        ' 既存の Excel ブックを開く
        xlBooks.Open("C:\Users\m-sugimoto\Desktop\エクセルテスト2.xlsx")

        ' Excel を表示する
        xlApplication.Visible = True

        'xlBook = xlApplication.Open("C:\Users\m-sugimoto\Desktop\エクセルテスト2.xlsx")
    End Sub
End Class

6行目の
xlBooks = xlApplication.Workbooks 
この行で

「System.InvalidCastException型
Microsoft.Office.Interop.Excel.ApplicationClassのCOMオブジェクト
をインターフェイス型 Microsoft.Office.Interop.Excel.Applicationに
キャストできません。」

と出ます。
上記のプログラムは仕事場のPCで書いたのですが
なぜか、同じコードを自宅のPCで書いて実行すると、問題なく開きます。


仕事場のPCにはOffice2019が入っており、VisualStudio2019で実行しました。
自宅のPCにはOffice2007が入っており、こちらもVisualStudio2019で実行しました。
仕事場のPCでは参照に Microsoft Excel 16.0 Object Libraly が
自宅のPCでは参照に Microsoft Excel 12.0 Object Libraly が入ってるのですが
このあたりに問題があるのでしょうか。

また御教授いただけると嬉しいです。

編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
親記事 →Re[1]: Excelを開くコードで例外が出る /くま
 
上記関連ツリー

Excelを開くコードで例外が出る / masaX (21/10/30(Sat) 12:20) #98311 ←Now
Re[1]: Excelを開くコードで例外が出る / くま (21/10/30(Sat) 13:12) #98312
  └ Re[2]: Excelを開くコードで例外が出る / masaX (21/10/30(Sat) 14:06) #98313
    └ Re[3]: Excelを開くコードで例外が出る / masaX (21/10/30(Sat) 14:36) #98315
      └ Re[4]: Excelを開くコードで例外が出る / くま (21/10/30(Sat) 15:16) #98317
        └ Re[5]: Excelを開くコードで例外が出る / masaX (21/10/30(Sat) 16:26) #98318 解決済み

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信