excel vba调用其他程序

VB调用其他程序

1 使用Shell函数

Shell的语法:Shell(PathName[,WindowStyle])
PathName为必需参数。类型为String,它指出了要执行的程序名,以及任何需要的参数或命令行变量,也可以包括路径名。
WindowStyle为可选参数。Integer类型,指定在程序运行时窗口的样式。WindowStyle有以下这些值。

常量 描述
VbHide 0 窗口被隐藏,且焦点会移到隐式窗口。
VbNormalFocus 1 窗口具有焦点,且会还原到它原来的大小和位置。
VbMinimizedFocus 2 窗口会以一个具有焦点的图标来显示(缺省值)。
VbMaximizedFocus 3 窗口是一个具有焦点的最大化窗口。
VbNormalNoFocus 4 窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。
VbMinimizedNoFocus 6 窗口会以一个图标来显示,而当前活动的窗口仍然保持活动。
Dim ActivePath as String
ActivePath = ActiveWorkbook.Path
Shell "python " + ActivePath + "\a.py", vbNormalFocus
Shell "cmd.exe /c del 某个文件"

2 使用Wscript.Shell对象调用程序

Wscript.Shell可以调用程序、操作注册表、管理环境变量等。

Dim WshShell As Object
Dim result As Integer
set WshShell = CreateObject("WScript.Shell")
' 第一个参数要执行的命令,
' 第二个参数是执行窗口显示的设置,默认值为0,即不显示窗口
' 第三个参数是设置是否等待执行返回,默认为False,即不等待返回就往下继续执行。
result = WshShell.Run("python " + ActiveWorkbook.Path + "\main.py", SW_SHOWNA, True)
' 第二个参数和第三个参数都是默认值,即不显示窗口,也不等待执行结束。
WshShell.Run("cmd.exe /c del " + ActiveWorkbook.Path + "\main.py")
posted @   下夕阳  阅读(661)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示