Excel VBA 语法问题 shell命令

来源:百度知道 编辑:UC知道 时间:2024/05/07 12:35:36
Shell ("calc") '语法正确
Shell ("calc", 1) '语法错误
a = Shell("calc", 1) '语法正确

实在搞不明白,shell带2个参数一定要有赋值操作吗?否则语法错误?
谁能解释下为什么?
谢谢,我明白了。
我刚刚想上来补充
Shell "calc", 1 '语法正确
谢谢一楼,也非常感谢二楼。
其实Shell是一个函数,只是不加括号,VBA就认为这个不是函数了,所以不用赋值运算。
而带括号有2个以上参数的,VBA就认为这是函数,就一定需要赋值运算。

Shell 既是函数,又是语句,Shell ("calc") 或不加括号,系统自动认为是语句,因而语法正确。而Shell ("calc", 1), 系统会认为是函数,而函数是有返回值的,因此必须要有一个接收返回值的变量。

调用函数时,如果不需要函数的返回值,就不需要加括号。比如:Shell "calc", 1 这样写就正确的。 如果需要返回值就一定要加括号。

Shell 是一个函数当然要有赋值操作啦
第一个参数是文件名,第二个参数是打开模式,不具体说明两个参数,Shell 怎么去完成操作呢