質問: getobject(fname) (以下指定ファイルを開く処理) else msgbox hwindow end if end sub 以上です、よろしくお願いします。
回答: まったく別のアプローチですが、以下の方法を当方はよく利用します '------------------------------------------------ dim xlsapp as object on error resume next 'エクセルが起動していない場合エラーになるためエラーを抑止 set xlsapp = getobject(, "excel.application") '開いているエクセルを取得 on error goto 0 'エラー抑止を解除 if xlsapp is nothing then msgbox "エクセルは起動していません" else msgbox "エクセルは起動中です" end if '------------------------------------------------ また、以下の様に関数化して使用する方がよりお勧めです '------------------------------------------------ 'activexexeが起動中か否かを返す '起動中=true/起動していない=false public function existactivexexe(byref argactivexclassname as string)as boolean dim objexistcheckas object on error resume next set objexistcheck = getobject(, argactivexclassname) on error goto 0 existactivexexe = not (objexistcheck is nothing) set objexistcheck = nothing end function '------------------------------------------------ 業務などで、"on error resume next"使用禁止などの(頑迷な)ルールがある場合等、また"on error go to [ラベル]"が使用できる場合は関数化の方法なら簡単に書き換えられます。 on error禁止の場合は、上記方法はあきらめてください。