0

我运行一个 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()
4

1 回答 1

0

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

于 2012-08-10T15:34:29.260 回答