(四)VBA常用基础知识:数组1

  1. 正常数组,vba的数组就是有这个毛病,从0开始会多一个,可以用代码Option Base 1设定从1开始,但我感觉完全没必要
Sub Hello()
    Dim arr(3) As String
    arr(0) = "1"
    arr(1) = "2"
    arr(2) = "3"
    arr(3) = "4"
    For i = 0 To 3
        Debug.Print arr(i)
    Next
End Sub

在这里插入图片描述

Option Base 1
Sub Hello()
    Dim arr(3) As String
    ''arr(0) = "1"
    arr(1) = "2"
    arr(2) = "3"
    arr(3) = "4"
    For i = 1 To 3
        Debug.Print arr(i)
    Next
End Sub

在这里插入图片描述

2.vba的数组还有一种写法

Sub Hello()
    Dim arr(3 To 6) As String
    arr(3) = "1"
    arr(4) = "2"
    arr(5) = "3"
    arr(6) = "4"
    For i = 3 To 6
        Debug.Print arr(i)
    Next
End Sub

输出结果:
1
2
3
4

3.数组循环时需要计算数组的size,这个时候就不得不先提一笔UBound,LBound函数
3.1 UBound:返回数组的最大索引数
3.2 LBound:返回数组的最小索引数
3.3 使用UBound,LBound函数对1和2的循环做一下更改

Sub Hello()
    Dim arr(3) As String
    arr(0) = "1"
    arr(1) = "2"
    arr(2) = "3"
    arr(3) = "4"
    For i = 0 To UBound(arr)
        Debug.Print arr(i)
    Next
End Sub
输出结果:
1
2
3
4
Sub Hello()
    Dim arr(3 To 6) As String
    arr(3) = "1"
    arr(4) = "2"
    arr(5) = "3"
    arr(6) = "4"
    For i = LBound(arr) To UBound(arr)
        Debug.Print arr(i)
    Next
End Sub
输出结果:
1
2
3
4
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值