请问怎样实现在一个函数中返回一组数据?

sjkhy799110 2004-01-02 08:10:37
请问怎样实现在一个函数中返回一组数据(应该怎样定义返回值的数据类型?)?
最好给个简单例子!谢了!
...全文
85 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
cymwllbggyje 2004-01-02
  • 打赏
  • 举报
回复
就是返回数组了,
再不然,
你自己定义一个类型,
返回自定义类型也可以。
rainstormmaster 2004-01-02
  • 打赏
  • 举报
回复
呵呵,不错
northwolves 2004-01-02
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
For i = 1 To UBound(allday(2004))
List1.AddItem allday(2004)(i)
Next
End Sub
Function allday(ByVal theyear As Long)
Dim temp() As String, i As Long, num As Long
num = DateDiff("d", DateSerial(theyear, 1, 1), DateSerial(theyear + 1, 1, 1))
ReDim temp(1 To num)
For i = 1 To num
temp(i) = DateSerial(theyear, 1, i)
Next
allday = temp
End Function
SoHo_Andy 2004-01-02
  • 打赏
  • 举报
回复
1 返回数组
'返回数组的例子
Private Sub Command1_Click()
Dim I As Integer
Dim str2() As String
str2 = 返回数组
For I = 0 To UBound(str2) - 1
Debug.Print str2(I)
Next
End Sub
Function 返回数组() As String()
Dim str1() As String
str1 = Split("a,b,c,d,e", ",")
返回数组 = str1
End Function

2 返回自定义类型数据
Private Type MyRecord
name As String
address As String
End Type
Private Sub Command1_Click()
MsgBox ReturnInfo.name
MsgBox ReturnInfo.address
End Sub
Private Function ReturnInfo() As MyRecord
ReturnInfo.name = "呵呵"
ReturnInfo.address = "广州"
End Function
sqfeiyu 2004-01-02
  • 打赏
  • 举报
回复
可以先在公用模块里定义一个想要的数据类型,然后申明函数的返回值为该类型
sjkhy799110 2004-01-02
  • 打赏
  • 举报
回复
ok,谢谢,现在结贴!
SoHo_Andy 2004-01-02
  • 打赏
  • 举报
回复
数组元素个数使用 ubound(数组) 即可,返回的是数组的下标
dim str(2) as string
则 ubound(str) 的值为 2

sjkhy799110 2004-01-02
  • 打赏
  • 举报
回复
谢谢大家!
我就是想返回数组,现已经明白了!
还想问个问题:
redim 数组(i) 时是否有什么函数可以返回数组元素的个数? 还是要 for 两遍才能确定?或者能否同时返回数组(i)和i两人值呢?水平有限见笑了!
晚点结贴,再次谢谢以上热心的朋友!
如:
for each objs as object.sub
i=i+1
next
redim 数组(i)
for each objs as object.sub
数组(j)=objs
next

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧