vb数组元素个数(VBA如何遍历数组,这里有解决方法,一定不要错过)

No.1

数组是一个很好的应用方法,如果不会,那么就要努力去学习。

因为数组在处理数据方面有着十分重要的作用。

本节不介绍怎么创建数组,在以前的文章里面有过详细介绍,这里主要介绍一下如果遍历数组。

遍历是一个专业说法,你可以理解为对数组里的每一个数据进行查找比较。

这有什么用呢,大概是个模糊的概念。

比如有一个数组,里面放了很多数据,我们的目的是在这些数据中找出需要的进行计算处理。但是,并不知道数据存放的位置,那么就需要对数组里的数据进行遍历,直到找到为止。

本节就是要解决怎么找的问题。

下面是最基本的遍历数组流程图。

首先要有一个数组,然后设置一个变量X,这个X的属性是Variant,可变型,如果设置为其它类型就错,没有为什么,这个是VBA内部规则。

然后引入循环中进行比较,比较方法就是这个X变量的值和要查找的值之间比较。

这里要做一个判断语句,也就是IF...Then...End 或者其它判断语句。

如果两者相等,那么就找到了,说明当前数组元素值是要查找的值。

然后,进行相应的数据计算或者其它操作。

如果要继续查找,返回继续循环,如果不想找了,就退出循环,可以使用Exit语句。

下图示例为查找一些数据,数据以下拉列表框给出。

根据不同的查找结果,可以输出不同的提示信息。

也就是分支处理,不同的结果去处理不同的数据代码。

这里只是给出数组里是否存在的提示。

No.2

文字说明可能不太清楚,下面用代码来解释一下,数组遍历的整个过程。

Dim xArr(0 To 50) '定义数组 Dim xi As Integer '定义计数变量 For xi = 0 To UBound(xArr) '给数组赋值 xArr(xi) = xi Next xi Dim sValue As String, onYes As Boolean sValue = VBA.Trim(Me.ComboBox1.Value) '取查询值 onYes = False '设置查询判断变量 Dim x As Variant '定义遍历变量 For Each x In xArr '循环遍历数组 If x = sValue Then '判断数组值是存在 Me.Label1.Caption = "数组里找到了:" & x onYes = True '设置判断值 End If Next x If Not onYes Then '如果不存在 Me.Label1.Caption = "数组集合里不存在:" & sValue End If

通过上述代码,我们就将数组遍历进行了一个操作过程。

代码中定义了一个数组xArr,其中保存了0-50共51个值。

在表中定义了一个ComboBox列表框,其中定义了0-100共101个数据值。

任意选择列表框,执行代码,可对数组内每个值和列表框内的选定值进行比较。

如果存在,那就给出结果,不存在就给不存在的结果。

vb数组

经测试,如果数组数据达10000000以上,会出现5秒以上延迟,所以,尽量别去处理千万级的数据,用数据库更有优势。

欢迎关注、收藏

---END---

您可以还会对下面的文章感兴趣

最新评论

  1. 莫愁前路无知己
    莫愁前路无知己
    发布于:2022-04-27 05:21:15 回复TA
    语句。如果两者相等,那么就找到了,说明当前数组元素值是要查找的值。然后,进行相应的数据计算或者其它操作。如果要继续查找,返回继续循环,如果不想找了,就退出循环,可以使用Exit语句。下图示例为查找一些数据,数据以下拉列表框给出。根据不同的查找结果,可以输出不同的
  1. 飙车大撒把
    飙车大撒把
    发布于:2022-04-27 12:56:59 回复TA
    ,这个是VBA内部规则。然后引入循环中进行比较,比较方法就是这个X变量的值和要查找的值之间比较。这里要做一个判断语句,也就是IF...Then...End 或者其它判断语句。如果两者相等,那么就找到了,说明
  1. 胡杰策志
    胡杰策志
    发布于:2022-04-27 05:13:20 回复TA
    人人都觉得永远会很远,其实它可能短暂得看不见。

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

使用微信扫描二维码后

点击右上角发送给好友