dim ret as byte(4)
ret=ReturnArr(1200)Private Function ReturnArr(ByVal param As Single) as Variant
Dim num(4) As Byte
num(0) = param/3
num(1) = param/4
num(2) = param/5
num(3) = param/6
ReturnAbsStatus=num
...
ReturnArr=?End Function
ret=ReturnArr(1200)Private Function ReturnArr(ByVal param As Single) as Variant
Dim num(4) As Byte
num(0) = param/3
num(1) = param/4
num(2) = param/5
num(3) = param/6
ReturnAbsStatus=num
...
ReturnArr=?End Function
dim ReturnAbsStatus() as ...
redim ReturnAbsStatus(n) as ...
然后再赋值就行了。
你的param最大为255*3=765 另外你有多处错误
改正如下
Private Sub Command1_Click()
Dim ret() As Byte
ret = ReturnArr(200)
End SubPrivate Function ReturnArr(ByVal param As Single) As Byte() 'Variant 也可以
Dim num(3) As Byte
num(0) = param / 3
num(1) = param / 4
num(2) = param / 5
num(3) = param / 6
ReturnArr = num
End Function
正确的代码:
Private Sub cmdOk_Click()
Dim ret(4) As Byte
ret = ReturnArr(200)
End SubPrivate Function ReturnArr(ByVal param As Single) As Variant
Dim num(3) As Byte
num(0) = param / 3
num(1) = param / 4
num(2) = param / 5
num(3) = param / 6
ReturnArr = num
End Function
Dim num(3) As Byte
num(0) = param / 3
num(1) = param / 4
num(2) = param / 5
num(3) = param / 6
ReturnArr = num
End FunctionPrivate Sub Command1_Click()
Dim ret As Variant
ret = ReturnArr(200)
If IsArray(ret) Then
For i = LBound(ret) To UBound(ret)
MsgBox (ret(i))
Next
End If
End Sub