こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルが裏で動いたままなんです。

VB6.0にて、プログラムを作っておりまして、VB上の入力されたデータを
エクセルのテンプレートファイルに出力し、テンプレートファイルを
名前を付けて保存(名前はシステム日付+".xsl")しております。

プログラムを起動し、エクセルへ出力し、プログラムを終了させたのですが、
出力したエクセルファイルが裏で動いているらしく、Windows(2000Pro)を
終了させるたびに、「****.xsl」を保存しますか?を聞いてきます。

この他、名前を付けて保存したエクセルファイルを起動すると、テンプレート
ファイルまで一緒に開き、一つのファイルを開いただけなのに、二つの
ファイルが起動します。

VB側からの制御が悪いのでしょうか?

よろしくお願いします。

投稿日時 - 2003-08-05 09:09:05

QNo.620046

困ってます

質問者が選んだベストアンサー

「Selection.~」とか「Range.~」のように
親オブジェクトを指定せずにSelectionオジュジェクトやRangeオブジェクトを使ってませんか?
親オブジェクトを指定せずに使うと、新しいエクセルがもう一つ立ち上がってしまいます。
※しかもVBの管理外で起動するので、VBから終了できない。

投稿日時 - 2003-08-06 00:08:51

お礼

どうもレスありがとうございます。

ご指摘された部分ですが、やはりちゃんとオブジェクトを
指定しております。

しかしながら、先ほど何も変更せずに動かした所、問題
なくエクセルがプロセスから消えました。
何故でしょうか?って聞く事自体間違っていますね。(汗)

とりあえず解決(?)したので、良かったです。
ありがとうございました。

投稿日時 - 2003-08-06 09:15:59

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.2

「プログラムを終了させた~」っていうのは
VBのプログラムの事ですよね?
だとすれば、
単純にExcel("Excel.Application"オブジェクト)を
終了("Quit")していないのでは?

投稿日時 - 2003-08-05 13:28:49

お礼

レスどうもありがとうございます。

ご指摘の部分に関しては、きちんと記述してあります。
プログラム終了後、タスクマネージャーのプロセスを見る
と、エクセルがまだ立ち上がっている状態です。

もちろんWindows終了後に、ファイルを保存しますか?と
聞かれます。

投稿日時 - 2003-08-05 14:32:32

ANo.1

おっしゃるとおりだと思います。
EXELへ出力させた後、EXCELはどうやって終了させているのでしょうか。

投稿日時 - 2003-08-05 09:14:53

あなたにオススメの質問