由于Excel和Windows的关系,天然就赋予了强大的基因。执行个文件真的太小意思了。
![780be9d99ea09f551a9e2a9dbdb4c01f.png](https://i-blog.csdnimg.cn/blog_migrate/30aa3691ef97bf192a50621b66b17dbe.jpeg)
vba shell 函数
格式:Shell(PathName[,WindowStyle])
PathName :要执行的程序名,包括目录或文件夹
WindowStyle :程序运行时窗口的样式
例:Shell "control.exe" '打开Windows控制面板
更多功能看下图,说了基因强大,由于是一个家族的软件,所以在windows系统之下,无所不能的样子,有兴趣可以自己去发现。
使用方法
![1e9f9a2461a19637f5138d8bf19d4c50.png](https://i-blog.csdnimg.cn/blog_migrate/b4c468f075e0a1c94cd10662aea8088f.jpeg)
左侧为命令功能代码表,也就是执行命令使用的操作符,具体操作在右边。
下拉组合框可以选择功能,选择之后单击执行,就会执行相应的系统命令。
具体做这个有什么用呢?我也思考了很久,发现可能真没什么用,但是对于一个电脑小白来说,或许有点用处。
比如要打开系统中的某个功能项的时候,就要在开始里找好久,有些根本不知道如何查找。
所以,这个工具的可以拿出来了。
例如,需要打开密码管理,进行密码设置的时候,可以打开这个文件选择密码,单击执行按钮之后,就打开密码管理功能了。
虽然在开始里面也很好找,但是如果要打开组策略呢!是不是就有点犯难了?
也不难,只要认识组策略就以上面的方法操作就可以打开了。
不然就要在控制面板里找啊找。
其实,Shell执行了一个代码:Shell "cmd.exe /c gpedit.msc "
完整代码
![0b09df656917f1022c01a80cb82ab1bd.png](https://i-blog.csdnimg.cn/blog_migrate/e9f766cb07d0d9ac932dfa54e2b5d707.jpeg)
这个例子代码量很少,所以就全部贴出来了。
喜欢的赶快收藏起来,不要错过哟。
Option ExplicitPrivate Sub CommandButton1_Click()Dim Strr As StringStrr = Me.OLEObjects("ComboBox1").Object.ValueIf VBA.Len(Strr) = 0 Then Exit SubDim R As Range, Rx As Range''定义功能名称单元格区域Set R = Me.Range("D2:D" & Range("D65535").End(xlUp).Row)For Each Rx In R ''遍历名称 If Rx.Value = Strr Then ''如果找到相同名称 Shell Rx.Offset(0, -1).Value ''执行命令 Exit For End IfNext RxEnd SubPrivate Sub Worksheet_Activate() Dim LsVarr As String LsVarr = Me.Range("D2:D" & Range("D65535").End(xlUp).Row).Address ''ComboBox组合框赋值 Me.OLEObjects("ComboBox1").ListFillRange = LsVarrEnd Sub
Shell命令
![ccb6d3b9cb5509a81119a22fc2ff4c04.png](https://i-blog.csdnimg.cn/blog_migrate/71b0656d3b2c44e0210cea580d5213dc.jpeg)
上图为简单的一些系统命令,收藏备用。