| 
    
     |  | ▼neptune さん: 回答ありがとうございます。
 
 いくつかお伺いしたいのですが・・・
 使用していパソコン(サーバー)は、ちょっと理由があり簡単に再起動する
 ことができません(常時接続端末のため)
 それでこの端末が、1週間に1回自動で電源が落ちるようになっているため、
 そのときにエクセル等開いているとなると正常に電源が落ちないのでは・・・
 という不安があります。
 申し訳ないのですが以下にプログラム内容を記載しようと思うので、
 もしよろしければ何かご教授いただけないでしょうか。
 よろしくお願いします。
 
 エクセルオープンのVBS↓
 
 Option Explicit
 On Error Resume Next
 Dim objExcel
 Dim str_FileName
 Dim objFile
 Dim objF
 Dim str_ExcelFile
 const ForWriting = 2
 
 'ファイルオープン
 str_FileName = "ログテキストファイルの場所・ログファイル名"
 Set objFile = WScript.Createobject("Scripting.FileSystemObject")
 Set objF = objFile.OpenTextFile(str_FileName,ForWriting,True)
 If Err.Number <> 0 Then
 MsgBox "LogFile Open Error :" & Err.Description
 sub_EndProc()
 WScript.Quit
 End If
 'logファイルに日付書き込み
 objF.Write Now & vbCrLf
 If Err.Number <> 0 Then
 MsgBox "LogFile Write Error :" & Err.Description
 sub_EndProc()
 WScript.Quit
 End If
 
 'Excelオブジェクト作成
 set objExcel = WScript.CreateObject("Excel.Application")
 If Err.Number <> 0 Then
 MsgBox "Excel Create Error :" & Err.Description
 sub_EndProc()
 WScript.Quit
 End If
 
 
 'Excelワークブックオープン
 str_ExcelFile = "エクセルファイルの場所・エクセル名"
 objExcel.Workbooks.Open str_ExcelFile
 If Err.Number <> 0 Then
 MsgBox "Excel Open  Error :" & Err.Description
 sub_EndProc()
 WScript.Quit
 End If
 With objExcel
 .Visible = false
 .DisplayAlerts = true
 End With
 objExcel.Workbooks.Close
 'logファイルに終了書き込み
 objF.Write str_ExcelFile & " 終了" & vbCrLf
 If Err.Number <> 0 Then
 MsgBox "LogFile Write Error :" & Err.Description
 sub_EndProc()
 WScript.Quit
 End If
 
 'logファイルに終了書き込み
 objF.Write str_ExcelFile & " 終了" & vbCrLf
 If Err.Number <> 0 Then
 MsgBox "LogFile Write Error :" & Err.Description
 sub_EndProc()
 WScript.Quit
 End If
 
 'logファイルに終了書き込み
 objF.Write Now & " end" & vbCrLf
 sub_EndProc()
 WScript.Quit
 
 Sub sub_EndProc()
 If IsObject(objExcel) Then
 objExcel.Quit
 set objExcel = Nothing
 End If
 If IsObject(objF )  Then
 objF.Close
 set objF = Nothing
 End If
 If IsObject(objFile) Then set objFile = Nothing
 End Sub
 
 以上で、タスクに登録して実行したところ、
 Excelワークブックオープン のところでエクセルをオープンし、
 マクロを実行させるようになっているのですが、
 このときエクセルのマクロでエラーが起き、デバックして中断させたのですが、
 そのエラーのプログラムを消しても、上書き保存されず、別名で保存しますか?
 というメッセージが出ます。
 キャンセルして閉じてそのエクセルを開こうとすると、他に開いているので
 読み取り専用で開きますか?と聞かれます。
 ちなみにログファイルもオープンされたままでしたので、もう一度VBSを
 起動させると「ログファイルオープンエラー」のメッセージが出てきたので、
 新たにログファイルをクローズするのみのプログラムを作成し実行、
 そのログファイルは削除してしまいました。
 
 すみません、こんな感じでどうでしょうか?
 初心者で勉強不足で申し訳ありません・・
 よろしくお願いします。
 
 |  |