| 
    
     |  | >これがあるとないのとではどのように違ってくるのでしょうか VBS実行ファイルからなら、そのコードの処理によって開いているブックを閉じ、Excel.exeも閉じてから電源をOff出来るので、より安全と思われます。コードは、
 VBSファイルがExcelと関係ない実行ファイルなので、Excelのインスタンスが
 現在あるかないかを判断(GetObjectでオブジェクト変数に格納)し、あれば閉じる
 という方法にします。従って単に Application.Quit などとは出来ません。以下の
 ようになります。
 
 Dim xlApp, objSystemSet, objSystem
 On Error Resume Next
 Set xlApp = GetObject("Excel.Application")
 If Not xlApp Is Nothing Then
 xlApp.Save
 xlApp.Quit
 Set xlApp = Nothing
 MsgBox "開いているエクセルは保存処理されました", 64
 End If
 On Error GoTo 0
 Set objSystemSet = GetObject("winmgmts:{impersonationLevel=impersonate,(Shutdown)}").InstancesOf("Win32_OperatingSystem")
 For Each objSystem In objSystemSet
 objSystem.Win32Shutdown 8
 Next
 
 
 |  |