2016-06-01 18 views
-3

vbsファイルがExcelマクロを呼び出すように記述されています。ただし、このvbsファイルがJenkinsを使用してスケジュールされると、マクロは実行されませんが、コンソールに成功メッセージが表示されます。Jenkinsを使用してExcelマクロをスケジュールする

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 

ジェンキンスコマンドを構築: - vbsファイルを手動で実行されたとき call "C:\Demo\Migration\Start_Report_Tool_For_Demo.bat

マクロ操作が完全に実行されます。しかし、ジェンキンスから実行されたときはいつでも動作しません(コンソールには「成功」と表示されます)。

+1

どのようにマクロを呼び出しますか?質問を編集して追加します。 – CSchulz

+0

Jenkinsビルドコンソールログの関連部分も追加してください。 –

+0

質問が編集されました –

答えて

0

解決策が見つかりました。

は内容でPowerShellのファイルを書き込む - :

**

$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() 
} 

**

あなたはジェンキンスのためのPowerShellのプラグインが必要になります。 1. "Windows Powershell"ビルドステップを追加します。 2. "mkdir C:¥Windows¥system32¥config¥systemprofile¥Desktop" 3.このコマンドを入力します。3. "を使用してpowershellファイル(.ps1)を実行します。/"powershellステップ(" ./Powershell_Test.ps1 ") あなたの愉快な道を行く。

0

これは権限の問題のようです。私は「ジェンキンス」が何であるか分かりませんが、管理者権限があることを確認する必要があります。

関連する問題