1、创建一个Java Class代码可以简单如下
public class Test {
public static void main(String[] args) {
System.out.println("Test")
}
}
2、编译Class
3、在VBA中通过如下代码调用java
Dim ws As WshShell
Dim we As WshExec
Dim i As Integer
Set ws = New WshShell
Set we = ws.Exec("javaw e:\Test")
MsgBox we.StdOut.ReadAll
Set ws = Nothing
Set we = Nothing
4、执行上面VBA代码会d出对话框显示Test字样
注意要点:
(1)VBA工程中药引用Windows Script Host Object Model
(2)机器上要安装JRE,而且要将JRE Bin路径写入到环境变量PATH中,否则需要指出JAVAW的完整路径
其实可以使用 VBA中的Shell调用JAVA,但是这样就只能是执行java,没有返回值,使用如上方法可以通过System.out.print输出字符作为返回结果被获取到
Java是一种可以撰写跨平台应用山数带程序的面向对象的程序设计语言。Java 技毕腊术具有卓越的逗芦通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
调用外部程序使用Shell语句,下面的实例是调用CMD命令打开DOS窗口并执行Dir命令,将浏览结果存入文件,然后用open语句打轿蠢开文件,读入vba,实例中使用的是绝对路径,如果是相对路径用“&”表示盘符,您要调用计算器,并获闭知陪取计算器的计算结果,仅调用外部程序猛粗是不行的,我尝试使用API函数钩子,结果是自己重新写一个计算器都没那么费神Sub shellcall()
Shell "cmd /c dir c:\>c:\1aaa.txt"
Open "c:\11ss.txt" For Input As #1
Dim s As String
While Not EOF(1)
Line Input #1, s
Debug.Print s
Wend
Close #1
End Sub
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)