Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
Book.SaveAs部分で !COMException はハンドルされませんでした
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=9110#CommentId11463
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
yamaV1.02β
 (社会人)
投稿日時
2009/5/8 04:44:47
お世話になります。
初級講座「第44回 周辺にあるテクノロジ」4.Excelの操作 のコードの途中でエラーになります。
http://rucio.groupsite.jp/commu/ThreadDetail.aspx?ThreadId=242
Microsoft Excel 11.0 Object Libraryに参照設定して、コードを実行すると、
「
'▼後処理
Book.SaveAs("C:\VB\Test.xls") '保存
」
の部分で、
「
!COMException はハンドルされませんでした。
サーバーによって例外が返されました。 HRESULT からの例外:0x80010105 (RPC_E_SERVERFAULT)
トラブルシューティングのヒント:
例外のErrorCode プロパティを調べて,COM オブジェクトによって返された HRESULT を判断します。
この例外に関する一般的なヘルプを参照します。
」
エラーが発生しているのは、Book.SaveAs("C:\VB\Test.xls")の箇所のみです。保存先のフォルダは存在しています。保存先を変更してみたてもこのエラーは発生し続けます。
Book.SaveAs("C:\VB\Test.xls")部分をコメントアウトすると、「'Book1'への変更を保存しますか?」とダイアログが表示され、保存したファイルを見るとコートの他の部分の動作は問題なく実行されているようです。
ヘルプを辿ってみましたが、理解がおよばず、先に進めません。
試しに、レイトバインディングにしてみたところ、問題なく動作しました。
'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
↓
Dim Excel As Object
Dim Book As Object
Dim Sheet As Object
Excel = CreateObject("Excel.Application")
また、参照を Microsoft Excel 9.0 Object Library に変更してみたところ、
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
↑の3行がエラーになったので、
Dim Excel As New Excel.Application
Dim Book As Excel.Workbook
Dim Sheet As Excel.Worksheet
に変更しまして、問題なく最後まで動作しました。
このエラーでは何が起きているのでしょうか。
どんなものでしょう。