微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

VB 一个函数传回多个值

'●用Function当成子程序的一个好处,就是Function本身可以传回一个值到上一层呼叫的子程序里,但问题来了,若为了工作上的需要,想一次传回一个以上的值,那该怎么办?Private Sub Command1_Click()MyReturn 5,6End SubPrivate Function MyReturn(X,Y) As LongA = X + YB = X - YC = X * YD = X / Y'想传回A、B、C、D四个数值回去,怎么写?End Function'●这是一个基本的观念问题,子程序与子程序间的传值有ByVal与ByRef两种,ByVal是两个子程序间的传值放在不同的内存位置,而预设的ByRef则是将传值放在同一个内存位置上,故这一点可以拿来利用,可将上式改写成:Private Sub Command1_Click()MyReturn 5,6,Ans1,Ans2,Ans3,Ans4MsgBox "答案分别是" & Ans1 & "," & Ans2 & "," & Ans3 & "," & Ans4End SubPrivate Function MyReturn(X,Y,A,B,C,D) As LongA = X + YB = X - YC = X * YD = X / YEnd Function'●或是把资料作成Variant型态数组传回:Private Sub Command1_Click()Ans = MyReturn(5,6)MsgBox "答案分别是" & Ans(0) & "," & Ans(1) & "," & Ans(2) & "," & Ans(3)End SubPrivate Function MyReturn(X,Y) As VariantMyReturn = Array(X + Y,X - Y,X * Y,X / Y)End Function

原文地址:https://www.jb51.cc/vb/261898.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐