嗨我需要在同一工作簿中的不同工作表上运行不同的vba脚本。基本上,每个工作表都有自己的vba脚本,它触发ODBC连接,然后从数据库更新工作表。我已经能够获得一个vba脚本在一张纸上运行并保存为...没问题,但不能再运行一个。这里是我使用的代码Powershell跨多个工作表在Excel工作簿中运行多个vba脚本
$excel = new-object -comobject excel.application
$excelFiles = Get-ChildItem -Path C:\test\Daily_update.xlsm
$Date = (Get-Date -Format dd-MM-yy)
Foreach($file in $excelFiles)
{
$workbook = $excel.workbooks.open($file.fullname)
$worksheet = $workbook.worksheets.item(2)
$excel.Run("Test_Refresh")
$workbook.saveAs("C:\test\Daily_update_$Date.xlsm")
$workbook.close()
}
$excel.quit()
当我尝试添加其他工作表和vba脚本它根本不起作用。
基于此信息(http://blogs.technet.com/b/heyscriptingguy/archive/2009/01/13/how-do-i-run-an-office-excel-macro- on-multiple-workbooks.aspx),这应该有效。您可能需要向我们提供更多信息:您看到了什么错误?在什么时候? –