在powershell脚本宏执行期间阻止excel打开

时间:2012-08-10 14:44:52

标签: excel excel-vba powershell vbscript vba

我运行一个powershell脚本,在后台打开excel文件并在其上执行宏。问题是它需要很长时间才能运行,有时我会忘记它正在运行并打开另一个excel实例,这会弄乱脚本。

脚本中是否有办法阻止用户打开另一个excel文件,或者让脚本在后台执行并允许我在前台的另一个工作簿中工作?

以下是powershell脚本的相关部分:

# Open excel
$excel = new-object -comobject excel.application
$macro = $excel.workbooks.open("C:\Users\User\AppData\Roaming\Microsoft\Excel\XLSTART\PERSONAL.XLSB")

# Get list of files to parse
$files = Get-ChildItem -Path $PWD\*.csv

# ----execute macros----

# Close excel
$macro.close()
$excel.quit()

1 个答案:

答案 0 :(得分:0)

基本上,答案是否定的。创建新对象将打开Excel。它是不可见的($ Excel.Visible = $ true会使它可见),但它仍然必须打开才能发送命令。