Excel VBA - 通过宏在 SQL Server 中执行作业

Dea*_*gle 2 sql-server excel vba

我有一个存储在数据库中的作业,计划每天运行。但有时需要在任何给定时间执行此作业以查看最新数据(我使用的是 SQL Server Management Studio 2008)。

作业本身只是从包含实时数据的视图中获取数据并将其放入一个表中,然后该表将用作 Excel 文件的数据源。执行作业会删除并使用新数据重新创建表。

在 excel (2010) 中,我希望有一个“按钮”,按下该按钮将执行作业,然后在 excel 中的数据选项卡上点击刷新,然后将使用新数据更新工作表上的数据。

我的问题是:我如何从 excel 宏执行这项工作?

And*_*mar 5

Private Sub CmdRunJob_Click()
   Dim con As Object
   Set con = CreateObject("ADODB.Connection")
   con.Open = "DRIVER={SQL Server};SERVER=YourServer;" & _
       "USER=YourUser;PASSWORD=YourPassword;"
   con.Execute "exec msdb.dbo.sp_start_job 'YourJob'"
End Sub
Run Code Online (Sandbox Code Playgroud)