使用VBS在Excel中打开文本文件并运行宏而不打开excel

时间:2015-09-15 20:19:43

标签: excel vbscript

这可能听起来令人困惑,而且我并不完全确定它可以按我想要的方式进行,但我要做的是创建一个脚本,它将采用{ {1}}文件并在其上运行Excel宏,而不实际打开Excel或文件。我正在阅读的其中一个博客提出了这种方法,但我对VBS并不是很熟悉。

.txt

当我尝试将其与Set objExcel = CreateObject("Excel.Application") objExcel.Application.Run "'Path\Test.xlsm'!Module.Macro" objExcel.DisplayAlerts = False objExcel.Application.Quit Set objExcel = Nothing 文件一起使用时,这不起作用。 我收到的错误是.txt

我确定这与我缺乏VBS知识有关,但到目前为止,它是我找到的最接近我所寻找的脚本的脚本。我试图做的是什么?

2 个答案:

答案 0 :(得分:0)

您需要先打开工作簿,然后才能从中运行宏。

...
Set wb = objExcel.Workbooks.Open("C:\path\to\Test.xlsm")
objExcel.Application.Run "'Path\Test.xlsm'!Module.Macro"
...

如果不打开Excel或包含宏的文件,则无法运行宏。如果你想要这样的东西,你需要将VBA代码翻译成普通的VBScript。

答案 1 :(得分:0)

路径声明需要完整路径,例如" c:\ .... " 我认为它应该是Module1.Macro_Name(不是Module) 写入记事本但在桌面上保存.vbs。只需点击运行

即可