我要完成的任务: 我想通过按绑定到VBA宏的按钮将Excel表上载到SQL Server数据库表。
我希望宏在继续之前等待过程完成。
我当前的方法: 当前,我在绑定到宏的按钮后面的单元格中有一个SSIS包作为对象嵌入。在此阶段,我的宏相当粗糙,因为我仍在尝试弄清楚如何在不打开默认应用程序的情况下运行SSIS程序包。
我希望它通过Shell脚本在后台运行。该宏将等待shell脚本发出的信号,表明上传成功,然后再继续。我以前用SSIS程序包作为外部文件运行了该程序,然后运行了外壳程序(有效);但是,我真的希望它包含在Excel文件中。
我的代码:
Sub UpdateGroupsMacro()
ActiveWorkbook.Save
ActiveSheet.Shapes.Range(Array("Object 1")).Select
Selection.Verb Verb:=Activate
' Shell ("DTEXEC.EXE /F " & ActiveWorkbook.FullName & "\xl\embeddings\oleObject1.bin""") <---This wasn't working even when I went one level deeper.
Application.Wait (Now + TimeValue("00:00:01"))
Worksheets("Macro").ListObjects("GetGroupsTableCount").Refresh
End Sub