vbs从函数里返回多个返回值(转)

上一篇 / 下一篇  2012-02-01 17:02:30 / 个人分类:VBScript


9w:N1e^X:A b0
http://relevantcodes.com/passing-multiple-values-from-functions/
  1. 全局范围返回变量
  2. 返回集合(Dictionary
  3. 返回数组
  4. 使用连接字符串
  5. 使用ByRef
51Testing软件测试网2KQ N~X

T0G8i/G(?&oh@ euJd0
Dim intNumber_1: intNumber_1 = 40
Dim intNumber_2: intNumber_2 = 80
 
Public Sub PassValues
    intNumber_1 = intNumber_1/4
    intNumber_2 = intNumber_2/4
End Sub
 
PassValues
 
MsgBox "intNumber_1 = " & intNumber_1 &_
    vbLf & "intNumber_2 = " & intNumber_2
Public Function PassValues(ByVal Num_1, ByVal Num_2)
    Set Dict = CreateObject( "Scripting.Dictionary" )
 
    With oDict
        .Add "Num_1", Num_1/4
        .Add "Num_2", Num_2/2
    End With
 
    Set PassValues = oDict
End Function
 
Set colNumbers = PassValues(40,80)
 
MsgBox "intNumber_1 = " & colNumbers.Item("Num_1") &_
    vbLf & "intNumber_2 = " & colNumbers.Item("Num_2")
Public Function PassValues(ByVal Num_1, ByVal Num_2)
    Dim arrArray: ReDim arrArray(2)
 
    arrArray(0) = Num_1/4
    arrArray(1) = Num_2/2
 
    PassValues = arrArray
End Function
 
arrNew = PassValues(40,80)
 
MsgBox "intNumber_1 = " & arrNew(0) &_
    vbLf & "intNumber_2 = " & arrNew(1)
Public Function PassValues(ByVal Num_1, ByVal Num_2)
    Num_1 = Num_1/4
    Num_2 = Num_2/2
 
    PassValues = Num_1 & "," & Num_2
End Function
 
sNum = PassValues(40,80)
 
MsgBox "intNumber_1 = " & Split(sNum, ",")(0) &_
    vbLf & "intNumber_2 = " & Split(sNum, ",")(1)
Dim intNumber_1: intNumber_1 = 40
Dim intNumber_2: intNumber_2 = 80
 
Public Sub PassValues(ByRef Num_1, ByRef Num_2)
    Num_1 = Num_1/4
    Num_2 = Num_2/2
End Sub
 
PassValues intNumber_1, intNumber_2
 
MsgBox "intNumber_1 = " & intNumber_1 &_
    vbLf & "intNumber_2 = " & intNumber_2

TAG:

 

评分:0

我来说两句

Open Toolbar