如何判断动态数组中有无成员?

virtualboy 2001-11-28 10:41:57
例:
Dim strTemp() as string


Private sub aa()
......
如何在使用这个数组前,判断其中有无成员?
......
end sub
...全文
174 点赞 收藏 13
写回复
13 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
superlight 2002-01-24
if Join(你的动态数组) & "" ="" then

空数组
End if

回复
lishush 2002-01-24
自己写一个函数:
Private Function CLUbound() As Integer
On Error GoTo myError

If UBound(sT) >= 0 Then
CLUbound = UBound(sT)
End If
Exit Function

myError:
CLUbound = -1 '未赋值
End Function
回复
blp 2002-01-24
Dim s As Variant不行吗,
为什么非要dim s()这样定义呢?
Dim s As Variant这句话我就认为是定义一个数组,难道不可以?
回复
seaboard 2002-01-24
blp(★★★) 
要求是数组
也就是先定义数组
dim s()
并非判断之后再定义
不用on error
该如何判断呢
回复
blp 2002-01-23
Dim s As Variant
If IsEmpty(s) Then
MsgBox "数组未初始化"
Else
MsgBox "数组已初始化"
End If
ReDim s(1)
If IsEmpty(s) Then
MsgBox 数组未初始化
else
MsgBox "数组已初始化"
End If
回复
seaboard 2002-01-23
up
如果不用on error怎么做??
回复
virtualboy 2001-12-05
这个问题没人答。
回复
virtualboy 2001-11-30
有人吗?

回复
zhoushaoj 2001-11-28
回复人: Jneu(沧海桑田) (2001-11-28 10:55:07) 得0分
Dim strTemp() As String

Private function kk(a)

On Error GoTo chkerr

If UBound(strTemp) Then
kk="ok"
End If
Exit function
chkerr:
kk="NO"
End function
老大 这回不就行了
这个函数就能判断有没有元素了
回复
virtualboy 2001-11-28
注意: 我不是要产生一个异常,过程中还有后续代码要执行!!!
回复
Jneu 2001-11-28
Dim strTemp() As String

Private Sub Command1_Click()
ReDim strTemp(1) As String
On Error GoTo chkerr

If UBound(strTemp) Then
MsgBox "OK"
End If
Exit Sub
chkerr:
MsgBox "NO"
End Sub
回复
zhoushaoj 2001-11-28
用 ubound(strTemp)可以得到数组上限
lbound(strTemp)可得到下限
但如果没有元素就会返回一个错误 错误号是9
用on error 就可以捕捉到这个错误 不就可以判断出有没有元素啦
回复
virtualboy 2001-11-28
Sorry,我的数组是结构数组。
Dim typTemp() as TYPE_ROAD_INFO

回复
发帖
VB基础类
创建于2007-09-28

7476

社区成员

VB 基础类
申请成为版主
帖子事件
创建了帖子
2001-11-28 10:41
社区公告
暂无公告