大佬教程收集整理的这篇文章主要介绍了Microsoft Excel Macro运行Java程序,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
是的,有可能。
实际上有很多方法,希望您喜欢我的示例。
为了证明这一点,我创建了一个程序,其中一些文本作为参数发送,并且程序以更改后的版本作为响应。我做了一个可运行的罐子。第一个示例从args中读取参数,而从标准输入中读取其他参数。
文件 和 :
public class Hello {
public static voID main(String[] args) {
StringBuilder sb = new StringBuilder("Hello");
if (args.length > 0)
sb.append(' ').append(args[0]);
System.out.println(sb.append('.').toString());
}
}
文件 和 :
import java.util.ScAnner;
public class Hello2 {
public static voID main(String[] args) {
ScAnner sc = new ScAnner(system.in);
StringBuilder sb = new StringBuilder("Hello");
sb.append(' ').append(sc.nextline());
System.out.println(sb.append('.').toString());
}
}
您可以将它们保存在一个jar中,但是随后需要创建并使用清单(这有点过分杀伤)。
现在,在Excel中,我添加一个模块和对windows脚本宿主对象的引用。如果您不喜欢sleep
,则可以将其替换为DoEvents
:
'add a reference to windows Script Host Object Model
'for example : Tools-References
Option Explicit
Private Declare Sub Sleep lib "kernel32" (ByVal DWMilliseconds As Long)
Private Sub RunSleep( _
exec As WshExec, _
Optional timeSegment As Long = 20 _
)
do while exec.Status = WshRunning
Sleep timeSegment
Loop
End Sub
Private Function RunProgram( _
program As String, _
Optional command As String = "" _
) As WshExec
Dim wsh As New WshSHell
Dim exec As WshExec
Set exec = wsh.exec(program)
Call exec.StdIn.Writeline(command)
Call RunSleep(exeC)
Set RunProgram = exec
End Function
Public Sub Run()
Dim program As WshExec
Set program = RunProgram("java -jar ""C:\\H1.jar"" Margus")
DeBUG.Print "STDOUT: " & program.StdOut.ReadAll
Set program = RunProgram("java -jar ""C:\\H2.jar", "Margus")
DeBUG.Print "STDOUT: " & program.StdOut.ReadAll
End Sub
就我而言,我收到了以下回复:
我已经学会了在Jxl和POI API的帮助下使用Java程序读写Excel文件。是否可以在宏的帮助下运行Java程序?
以上是大佬教程为你收集整理的Microsoft Excel Macro运行Java程序全部内容,希望文章能够帮你解决Microsoft Excel Macro运行Java程序所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。