基本的にExcelでマクロを実行し、Excelを保存するVBスクリプト(myVB2.vbs)があります。 は、ここに私のVBスクリプト複数のパラメータをJavaから.vbsファイルに渡す方法
Dim objExcel, objWorkbook, filePath
Set filePath = Wscript.Arguments(0)
Set objExcel = CreateObject("Excel.Application")
'Set objWorkbook = objExcel.Workbooks.Open("C:\Writter\Excel.xlsm")
Set objWorkbook = objExcel.Workbooks.Open(filePath)
objExcel.Visible = True
objExcel.Run "ChartUpdate"
objWorkbook.Save
objExcel.Quit
Set objWorkbook = Nothing
Set objExcel = Nothing
WScript.Quit
は今、私はVBスクリプトにExcelファイルパスの引数を渡すことで、これは、Javaからファイルをトリガーの.vbsする必要があります(myVB2.vbs)です。 Javaコードの下に、ファイルパスの引数を渡すことができません。エラーが表示されます。ファイル拡張子 ".xlsm"のスクリプトエンジンはありません。代わりに.exec
の
public static void main(String[] args) throws IOException {
String scriptpath = System.getProperty("user.dir") + "\\src\\com\\domain\\function\\resources\\myVB2.vbs";
String destinationlocation ="C:\\Writter\\Excel.xlsm" ;
Runtime rt = Runtime.getRuntime();
try {
Runtime.getRuntime().exec("wscript"+ scriptpath+" "+destinationlocation);
}
catch(IOException e) {
e.printStackTrace();
}
}
'String'の中にスペースが必要なように見えますか? 'Runtime.getRuntimee()を試してください。exec(" wscript "+ scriptpath +" "+ destinationlocation);' – Orin
ありがとうございました。また、もう一つの理由は、私はfilepathのためにセットを与えていたということでした。一度私はファイルパスのための設定を削除し、それは私のために働いた。 – Vinmee