アプリ版:「スタンプのみでお礼する」機能のリリースについて

下記の環境、プログラムで"ActiveXコンポーネントを作成できません。"のエラーが出て困っています。
毎回ではなく、「1回目はエラーで、2回目以降は出ない」「たまに出る」など、動作が一定ではありません。
Excel2003では問題なく動作するので、Excelのバージョンを変更しようかとも考えています。(高価で入手しにくいので踏み切れずにいます。)
Excel2007とVBの問題なのでしょうか?
プログラムの変更で解決すればいいのですが…。
ご教示ください!

****** 環境 ******
OS:WindowsXP Professional Ver.2002 SP2 (Microsoft .NET Framework 2.0 Configuration)
Excel:Microsoft Office Excel 2007
言語:VB2005 SP1
参照先:Microsoft Excel 12.0 Object Library

****** プログラム ******
Dim xlApp As Microsoft.Office.Interop.Excel.Application
Dim xlBook As Microsoft.Office.Interop.Excel.Workbook
Dim xlSheet1 As Microsoft.Office.Interop.Excel.Worksheet

Try
xlApp = CType(CreateObject("Excel.Application"),Microsoft.Office.Interop.Excel.Application)
xlBook = CType(xlApp.Workbooks.Open("C:\File\OutPutSheet_1System.xls"),Microsoft.Office.Interop.Excel.Workbook)
xlSheet1 = CType(xlBook.Worksheets(1),Microsoft.Office.Interop.Excel.Worksheet)

↓↓以下省略 (開放は行っています。)

A 回答 (2件)

EXCEL 2007 固有のエラーなのでしょうね。


当方、EXCEL 2007を持っていないので検証のしようが無いのですが

いろいろ調べましたら、
↓↓↓↓↓↓↓↓↓
を見つけました。
参考にしてみて下さい。

参考URL:http://www.happy2-island.com/bbs/bbs.cgi?mode=vi …

この回答への補足

参考URLを覘いてみました。
IISの意味をあまり理解してないのですが、PCは開発用に購入したネットやサーバに全くつながっていないものです。
やはりあきらめてOffice2003を手に入れるしかないんですかね…。
生産中止されてて入手できるか心配なのですが…。

補足日時:2007/11/29 17:10
    • good
    • 0

たぶん、これでうまくいくと思います。


解放は全てのOBJECTに対して順次行ってください。
大変回りくどいですけど、これくらいしないとタスクマネージャーに
ゾンビか残ってしまいます。

Dim xlApp As object
dim xlBooks As object
Dim xlBook As object
dim xlSheets As object
Dim xlSheet1 As object

Try
xlApp = CreateObject("Excel.Application")
xlBooks = xlApp.workbooks
xlBook = xlbooks.Open("C:\File\OutPutSheet_1System.xls")
xlSheets = xlBook.Worksheets
xlSheet1 = xlSheets(1)

この回答への補足

回答ありがとうございます。
Objectで宣言してもやはりエラーが出ます。
順番にデバックすると、xlApp = CreateObject("Excel.Application")
でNothingとなり例外処理されているので、開放の問題ではないのかなと…。
あとExcel2003で問題なく動作するのもよく解らないところです。

補足日時:2007/11/29 13:05
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!