虽然可以手动运行,但无法通过PowerShell运行宏

时间:2017-08-11 16:52:49

标签: excel excel-vba powershell vba

我有一个个人excel文件,其中包含一个宏。我想使用powershell脚本来运行该宏。但是,它给了我"Cannot run the macro 'Macroname'. The macro may not be available in this workbook or all macros may be disabled."的错误。如果我手动打开excel文件,我可以运行宏。我查看了信托中心 - >宏设置和所有宏都已启用。

任何帮助?

$excel = New-Object -comobject Excel.Application

#open file
$FilePath = 'K:\xxx\File.xlsm'
$workbook = $excel.Workbooks.Open($FilePath)

#make it visible (just to check what is happening)
$excel.Visible = $true

#access the Application object and run a macro
$app = $excel.Application
$app.Run("Macro")

我添加了我使用的powershell脚本。

编辑:

感谢Tim Williams。 由于我的宏在一个模块中,我案例的解决方案是:

$app.Run("'File.xlsm'!ModuleName.Macro")

0 个答案:

没有答案