如何判断VBA中的一个数组是否已经定义其维数上限下限-Natsume Takashi
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


如何判断VBA中的一个数组是否已经定义其维数上限下限

发表时间:2017/4/17 8:32:46 评论(0) 浏览(6930)  评论 | 加入收藏 | 复制
   
摘 要:如何判断VBA中的一个数组是否已经定义其维数上限下限
正 文:

最不动脑子的方法,直接写一个函数用错误陷阱捕捉就可以了

判断某个数组是否已经定义了下标,如果已经定义返回true

Function IsRedim(ByRef v As Variant) As Boolean
    Dim i As Long
On Error GoTo IsRedim_Err
    i = UBound(v)
    IsRedim = True
    Exit Function
IsRedim_Err:
    Select Case Err.Number
    Case 0
    Case 9
        Debug.Print Err.Number, Err.Description, "预定义错误"
    Case Else
        Debug.Print Err.Number, Err.Description
    End Select
End Function
'在模块中运行,以下过程测试IsRedim函数的效果
Function RunTest()
    Dim a() As String
    Dim b() As String
    ReDim a(5)
    Debug.Print IsRedim(a)  '返回true
    Debug.Print IsRedim(b)  '返回false
End Function



或者  用not逻辑符也可以判断 
Function RunTest()
    Dim a() As String
    Dim b() As String
    ReDim a(5)
    
    Debug.Print Not a   '返回 -48665169 ,不是 -1
    Debug.Print Not b   '返回 -1 表示其未指定下标
End Function




Access软件网交流QQ群(群号:198465573)
 
 相关文章
ADO获取字段值到数组的函数  【yuhong  2016/7/28】
【Access】定义数组/定义动态数组  【杨雪  2016/8/9】
Access_文档帮助_数组  【张义成  2016/9/3】
Access数组函数 Array Split Join 常见用法示...  【张义成  2016/11/2】
Access一维数组常见用法示例,自定义函数多空格替换为单空格  【张义成  2016/11/4】
常见问答
技术分类
相关资源
文章搜索
关于作者

Natsume Takashi

文章分类

文章存档

友情链接