vbs函数不固定参数。

2024-11-18 15:48:53
推荐回答(4个)
回答(1):

vbs函数不固定参数测试代码:
  function test(ByRef paralist)
  For Each param In paralist
  MsgBox param
  Next
  End Function

vbs函数程序:
   其实任何一种文本编辑器都可以用来开发VBS, 只不过记事本是由系统自带的, 比较好找而已. 尽管如此,
  使用InputBox和Msgbox函数
  (上面及本行可以不必写入源代码中,下面才是运行的代码)
  Msgbox (Inputbox("输入名字:"))
  把上面的程序清单输入到记事本里面, 然后保存为以.vbs为扩展名的文件(如果在文件名上没有“***”,就打开控制面板-文件夹选项-查看-取消隐藏已知文件类型的扩展名)。然后双击, 观察运行结果.
  为了上面的东西更精简,更明了,精简一下它的内容:
  name=Inputbox("请输入你的姓名:")
  Msgbox(name)
  语法解释:
  第一行,给第一行的inputbox(输入框)命名:name
  第二行,弹出对话框,对话框的内容就是第一行的inputbox输入的内容。
  注意:为了学得更好,推荐自己输入程序清单, 尽量不要复制->粘贴。
  要点:
  (1) 注释(以REM或'开头)行在程序中不起作用, 但能让别人更容易读懂程序。
  (2)变量好像一个盒子, 或一个代号, 可以代表想代表的东西. 变量赋值使用"="
  (3) 以""包裹起来的字符称之为"字符串"。
  (4) 函数像一个"黑箱", 有参数和返回值, 用"="左边的变量可以接住返回值。
  (5) Inputbox函数弹出一个输入对话框,Msgbox则用于输出。

回答(2):

vbs中不能达到这个功能,曾试过一种方法,如下,但是被证实是不行的:

function a(x,y,z)
if isnull(z) then z=0 '设定一个默认值,如果不输入z参数的话,以默认值代替
if isnull(y) then y=0
msgbox x
msgbox y
msgbox z
end function

以上经调试发现还是参数错误,不得已,只好上网请教高手,找到一个不算是答案的答案,勉强算是一个解决方法吧,可以参考一下这个网址:http://blog.csdn.net/zhsp1029/article/details/4202981

回答(3):

VBS中不可以这样。
你可以改为数组。如:
function a(arr())
msgbox arr(0)
msgbox arr(1)
end function
另,在VBS中没有数据类型,全部是变体型,即variant,可接受任何类型数据。

回答(4):

function test(ByRef paralist)
For Each param In paralist
MsgBox param
Next
End Function

'测试代码
Dim arr(1)
arr(0) = "a"
arr(1) = "b"

test(arr)