0

これが可能かどうかはよくわかりませんが、ここでは、Excel マクロを作成し、vbs を介してこのマクロを呼び出しています。これが同じスニペットです。

Dim objExcel, objWorkbook, ad, FilePath
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
For Each ad In objExcel.AddIns
    If ad.Name = "hello.xla" Then
        FilePath = ad.Path & "\hello.xla"
        Exit For
    End If
Next
objExcel.Workbooks.Open (FilePath)
Set objWorkbook = objExcel.Workbooks.Open(WScript.Arguments(0))
objExcel.Run "Test"
objWorkbook.Close
objExcel.Quit
Set objWorkbook = Nothing
Set objExcel = Nothing
WScript.Echo "Finished."
WScript.Quit

私はディスを行うことができます。今、私はJavaを使用してこのvbスクリプトを呼び出していますRuntime.getRuntime().exec("cmd /c start calling.vbs");

LinuxサーバーでこのExcelマクロを実行することは可能ですか? Linuxボックスでvbsファイルを呼び出すことはできず、Excelを開いてフォーマットすることはおそらく不可能であることを理解しています。したがって、Linuxマシンでおそらくshファイルを使用してそれを呼び出す回避策または他の方法がありますか?

4

1 に答える 1

2

理論的には、ExcelとVisual Basicをにインストールしwineて、マクロがそこで実行されるかどうかを確認できます。その後、実行を試みることができますRuntime.getRuntime().exec("wine cmd /c start calling.vbs");

実際には、これは自分をひどく足に撃ち込む非常に複雑な方法のように聞こえます。

Linuxで確実に実行したい場合は、ExcelやVisual Basicから離れて、古いオフィステクノロジの代わりにサーバーテクノロジの使用を開始してください。

于 2012-05-17T12:22:10.137 に答える