使用Jenkins调度Excel宏

使用Jenkins调度Excel宏,excel,jenkins,vba,Excel,Jenkins,Vba,已编写一个调用Excel宏的vbs文件。但是,当使用Jenkins计划此vbs文件时,不会执行宏,尽管控制台会显示一条成功消息 请建议是否有其他方法使用Jenkins调度Excel宏。vbs文件代码如下: Option Explicit On Error Resume Next ExcelMacroExample Sub ExcelMacroExample() Dim xlApp Dim xlBook Set xlApp = CreateObject("Excel.A

已编写一个调用Excel宏的
vbs
文件。但是,当使用Jenkins计划此
vbs
文件时,不会执行宏,尽管控制台会显示一条成功消息

请建议是否有其他方法使用Jenkins调度Excel宏。vbs文件代码如下:

Option Explicit

On Error Resume Next

ExcelMacroExample

Sub ExcelMacroExample() 

  Dim xlApp 
  Dim xlBook 

  Set xlApp = CreateObject("Excel.Application") 
  Set xlBook = xlApp.Workbooks.Open("C:\Demo\Migration\Compare_Tool_For_Demo.xlsm", 0, True) 
  xlApp.Application.Run "Compare_Tool_For_Demo.xlsm!OpenSupport2Tool"
  xlApp.Quit 

  Set xlBook = Nothing 
  Set xlApp = Nothing 

End Sub 
詹金斯构建命令:-
为Demo.bat调用“C:\Demo\Migration\Start\u Report\u Tool”


当手动执行
vbs
文件时,宏操作可以完美执行。但是,无论何时从Jenkins执行,宏操作都不起作用。(控制台显示“成功”)

这听起来像是一个许可问题。我不知道“Jenkins”是什么,但我认为您应该确保它具有管理员权限。

找到了解决方案

编写包含以下内容的powershell文件-:

**

**

您需要Jenkins的powershell插件。请按照以下步骤操作 1.添加生成步骤“Windows Powershell” 2.编写此命令-“mkdir C:\Windows\system32\config\systemprofile\Desktop” 3.通过使用“/”作为powershell步骤(“./powershell\u Test.ps1”)来执行powershell文件(.ps1)
那就快走吧。

如何调用宏?编辑问题并添加它。请添加Jenkins build console日志的相关部分。
$macroBook = ".\Excel.xlsm"
$procedureName = "Macro"
$macroBookFullPath = (ls $macroBook).FullName
$macroProcName = (ls $macroBook).Name + "!" + $procedureName

$excelApp = New-Object -com "Excel.Application"

try {

    $excelApp.DisplayAlerts = $false
    $excelApp.Workbooks.Open($macroBookFullPath)
    $excelApp.Run($macroProcName)
} finally {

    $excelApp.DisplayAlerts = $false
    $excelApp.Quit()
}