excel - 从 Jenkins 运行 Excel 宏

标签 excel vba batch-file jenkins

我正在尝试从 Windows 7 64 位 VM 上的 Jenkins Windows 服务运行 Excel 宏。我有一个指定 VBS 文件的批处理文件。然后在 VBS 文件中列出 Excel 宏。批处理文件在本地运行良好,但是当我从 Jenkins 运行它时,出现以下错误:

Microsoft VBScript runtime error: ActiveX component can't create object: 'Excel.Application'



VBS 文件中以下各项的每个实例似乎都会出现该错误:
Set xlApp = CreateObject("Excel.Application")

随便搜了一下,发现很多人对 cscript 的版本有问题用于执行 VBS 文件。在 64 位计算机上,似乎 cscript 的 32 位版本必须使用。但无论我如何尝试强制 cscript 的那个版本要使用,Jenkins 似乎忽略它并显示相同的错误,这让我认为 cscript版本不是我错误的原因。

我确实在 Excel 中启用了宏并检查了 ActiveX 设置。就像我说的,双击批处理文件,一切正常。 Jenkins 一定是在做一些奇怪的事情来导致这个问题。

有任何想法吗?

最佳答案

尝试使用
Set xlApp = GetObject("Excel.Application")
仔细阅读您的问题后,您似乎可能在使用可执行文件时遇到问题。嗯,你能不能给出一个完整的命令行,而不是运行/双击foo.vbs类似于 script.exe foo.vba .我编了script.exe,但你应该明白了,为什么不指定可执行文件呢?

我很少听说过 Jenkins,请注意提供您认为可能与此问题相关的任何文档链接。这对于将来遇到相同问题的 stackoverflower 很有用。

关于excel - 从 Jenkins 运行 Excel 宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37573921/

相关文章:

c# - 您尝试打开的文件 'file.xls' 的格式与文件扩展名指定的格式不同

excel - iferror 和 isblank 在同一表达式中

VBA - 在 a 范围内加 1 小时

Excel VBA 组合框默认值

vba - 在 VBA 中复制数据透视表值

windows - 批量更改到随机子目录

excel - VBA中未声明的变量在哪里

excel - 为什么 PasteSpecial 方法有时会抛出错误 1004?

java - 启动嵌入式 Tomcat 并从命令行打开浏览器

eclipse - 如何在 Eclipse 中打开 BAT(Windows 批处理)文件?