【发布时间】:2014-02-10 16:28:52
【问题描述】:
您好,我需要在同一个工作簿的不同工作表上运行不同的 vba 脚本。基本上,每个工作表都有自己的 vba 脚本,它触发 ODBC 连接,然后从数据库更新工作表。我已经能够让一个 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 脚本时,它根本不起作用。
【问题讨论】:
-
根据此处的信息 (blogs.technet.com/b/heyscriptingguy/archive/2009/01/13/…),应该可以。您可能需要向我们提供更多信息:您看到了什么错误?什么时候?
标签: excel powershell worksheet vba