VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2007/07/28(Sat) 12:05
投稿者のぞみ
Eメール
URL
タイトルRe^2: エクセルがタスクマネージャに残ってしまいます。

こんにちわ〜YK様m(_ _)m
ご回答ありがとうございます。
> > 1.  For Each ObjSheet In xlApp.Worksheets
>  1.  For Each ObjSheet In xlBook.Worksheets
>
> > 2.  SheetNum = SheetNum + 1
> > 3.    IF SheetNum > 6 Then
>     この値が5で終わったらエクセルは終了しないですよね。
>     チェックされましたか。

★原文の注記2および3に書きましたが、
『1.  For Each ObjSheet In xlBook.Worksheets』の前後に終了処理した場合、

【前置きの場合】・・・正常終了
Public Sub TargetFileOpen()
変数への格納は記述省略
xlApp.Quit
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing・・・・実行した時点で正常にEXCEL.EXE終了
 For Each ObjSheet In xlBook.Worksheets
  ・
  ・
  ・
 Next

【後置きの場合】・・・異常(プロセスにEXCEL.EXEが残ります)
Public Sub TargetFileOpen()
変数への格納は記述省略
 For Each ObjSheet In xlBook.Worksheets
   xlApp.Quit
   Set xlSheet = Nothing
   Set xlBook = Nothing
   Set xlApp = Nothing・・・この処理を実行してもプロセスにEXCEL.EXEが残ります
      ・
      ・
      ・
 Next

したがいまして「この値が5で終わったらエクセルは終了しないですよね。」の
以前の問題かと判断しています。
ちなみにSheetNumが5以下でForを抜けた場合は抜けた後に終了処理を記述していますので
Openしっ放しと言うことはないですよ〜(^^)


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -