2013-02-06 106 views
0

我想創建一個SQL作業,它將關閉所有打開的Excel進程。我創建了一個雙擊VB腳本。我已經使用類型的CmdExec試圖SQL代理作業關閉Excel進程

wscript C:\Apps\DestroyExcel.vbs

。我怎樣才能執行它的形式SQL來安排作業運行?

 
Dim objXL 
On Error Resume Next 
Set objXL = GetObject(, "Excel.Application") 

If Not TypeName(objXL) = "Empty" Then 
    objXL.quit 
Else 
    msgbox "Excel Not Running." 
End If 

回答

0

在SSMS:

  1. 轉到SQL Server代理
  2. 右鍵單擊 「作業」 - >新建作業
  3. 輸入信息
  4. 在步驟部分,單擊新建
  5. 對於Type,選擇操作系統(CmdExex)
  6. 對於該命令,請鍵入:cscript C: \ myscript.vbs
  7. 設置日程
  8. 按OK

我認爲應該這樣做。

+0

我試過這個選項。它成功執行且沒有錯誤,但Excel仍處於打開狀態。也許我應該嘗試Master.XP_CMDSHELL –

+0

@g_shockTan這很有趣。也許這是一個權限的事情?我認爲SQL作業默認從SQL Server代理運行,可能沒有足夠的權限來運行vbs腳本... hmmmm –

+0

我在cmd提示符下執行它,並使用cscript \ apps \ destroyexcel.vbs進行工作。它關閉了所有的Excel過程。 –