2016-06-01 88 views
2

Windows 7 64ビットVMのJenkins WindowsサービスからExcelマクロを実行しようとしています。 VBSファイルを指定するバッチファイルがあります。その後、VBSファイルにExcelマクロが表示されます。バッチファイルは、ローカルで正常に動作が、私はジェンキンスからそれを実行したとき、私は次のエラーを取得する:JenkinsからExcelマクロを実行しています

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

エラーがVBSファイルに次の各インスタンスで発生しているようだ:

Set xlApp = CreateObject("Excel.Application") 

VBSファイルを実行するためにcscriptのバージョンが使用されていると、他の多くの人が問題を抱えていることがわかりました。 64ビットコンピュータでは、cscriptの32ビットバージョンを使用する必要があります。しかし、どのように私がcscriptのバージョンを使用しようとしても、Jenkinsはそれを無視して同じエラーを表示するように見えるので、cscriptバージョンが私のエラーの原因ではないと思うようになります。

Excelでマクロを有効にして、ActiveX設定も確認しました。私が言ったように、バッチファイルをダブルクリックすると、すべて正常に動作します。ジェンキンスが問題を起こすために何か変わったことがあるはずです。

アイデア?

+0

Officeは32ビットまたは64ビットをインストールしていますか? –

+0

私は同様の問題に直面していますが、私はcscript .vbsを実行しましたが、次のエラーを受け取りました: 原因:java.io.IOException: "/ bin/sh"( "C:\ Jenkins \ workspace \ generateParams" "):CreateProcess error = 2、指定されたファイルが見つかりません。私のVBスクリプトは、Excelファイルを開きます - >マクロを実行 - >それを閉じます。ExcelファイルとVBスクリプトは同じ場所にありますが、これはジェンキンスワークスペースとは異なります。 – salsinga

答えて

0

は、あなたの質問に近い読み

Set xlApp = GetObject("Excel.Application")

を使用してみてください、あなたが実行ファイルに問題があることのように、それはそうです。うーん、あなたは実際に実行するのではなく、完全なコマンドラインを与えることができる/ foo.vbsのようなものをダブルクリックscript.exe foo.vba。私はscript.exeを作ったが、あなたはポイントを得るべきである、なぜ実行可能ファイルを指定しない?

私はたまにジェンキンスについて聞いたことがありますが、おそらくこの問題に関連すると思われるドキュメンテーションのリンクを提供しています。それは、同じ問題を満たす将来のスタックオーバーフラワーにとって、すべて役に立ちます。

関連する問題