永发信息网

UBound() = -1是什么意思?

答案:4  悬赏:20  手机版
解决时间 2021-03-05 09:05
Sub 怎样从一个数组中找出另一个数组不存在的内容2()
Dim b(), c(), d()
Dim n, j As Integer
b = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
c = Array(1, 2, 3, 4, 5, 6, 7, 8)
n = 1
For j = LBound(b) To UBound(b)
If UBound(VBA.Filter(c, b(j))) = -1 Then
ReDim Preserve d(1 To n)
d(n) = b(j)
n = n + 1
End If
Next
MsgBox Join(d, ",")
End Sub
请问,这段代码中If UBound(VBA.Filter(c, b(j))) = -1 Then,为什么要判断是否等于-1,等于-1代表什么,还有别的值么?分别是什么意思!谢谢
最佳答案
oaita说的不对。VBA.Filter本身是自动返回数组的,-1表示不包含,也就没有返回一个数组,也就是VBA.Filter不构成数组。
一下来自MSDN
VBA.Filter返回以零为基础的 array,其中包含以特定过滤条件为基础的字符数组集.
Dim MyIndex
Dim MyArray (3)
MyArray(0) = "Sunday"
MyArray(1) = "Monday"
MyArray(2) = "Tuesday"
MyIndex = VBA.Filter(MyArray, "Mon") 'MyIndex(0) 包含 "Monday"。
也就是说包含的时候返回一个数组,否则不构成数组,UBound(VBA.Filter返回值)为-1
掉坑里了,提交后发现已经采纳了。
全部回答
VBA.filter(c,b(j)) 先从这里分析 c是一个数组 b(j)是b数组的一个元素, filter这里的意思就是从c数组中找出包括b(j)的所有元素,构成一个新的数组。 vba.filter(c,b(j))这里的意思就是从c中找出包含b(j)的所有元素构成一个新的数组。 再说ubound(参数)这个函数的作物,这里的参数必须是一个数组,而函数的返回值是这个参数数组的最大下标。 而结合起来看,就是如果c中包含了b(j)的元素,那么会构成一个新的数组,最大下标起码是0,而不包含该元素时,自然b(j)的元素,那么返回-1
ubound()=-1,指某一数组的最大下标为-1 1、这是VBA中的函数。ubound和lbound分别对应最大下标和最小下标。 2、括号内引用的参数为数组。 3、二者的范围为均整数(负整数,0,正整数)。 4、一般设定其范围为1到某个自然数或者0到某个自然数,便于计数。极少有使用负数的情况,当然并不违规。 可复制如下代码到VBA中运行理解相关函数。 Sub array_() Dim my_Array(-10 To -1) As Single For i = -10 To -1 my_Array(i) = i * 2 Debug.Print my_Array(i) Next Debug.Print UBound(my_Array) Debug.Print LBound(my_Array) Debug.Print my_Array(UBound(my_Array)) Debug.Print my_Array(LBound(my_Array)) End Sub
ubound 函数返回一个数组的最大下标,数据类型为long。比如说你定义了一个数组a(22),他的最大下标为22。如果你给m赋值:m=ubound(a()),那么m的值就为22。.知道了函数的意义,什么时候用就不在话下了,比如说给元素比较多的数组赋值,据个例子 dim a(22) as integer for i=0 to ubound(a()) a(i)=i next i 与ubound相对的是lbound ,它是返回一个数组的最小下标,就不赘述了 如果想了解更多的vb函数,可以打开word点击工具>宏>visual basic编辑器>帮助>microsoft visual basic帮助>左侧的visual basic语言参考。 以上为个人看法,手打很辛苦,希望采纳,谢谢您的支持。 谢谢您的支持,有任何疑问欢迎您再次通过此渠道提问,让大家共同解决,共同进步! 以上回答仅为“百度规则”,没有任何违法行为,请楼主采纳,谢谢!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
凤凰村村地址有知道的么?有点事想过去
C语言数据类型问题 要清楚表示一个十位数,和
刚见面男人就想得到身体。这句话怎么说
粉煤灰改性沸石的主要方法有哪些
录取通知书的编号怎么在网上查
欧洲文学大师叫什么采
求一个关于 耽美 的 群名称
读“中国服装产业向中、西部转移示意图”,完
上迎凤村这个地址在什么地方,我要处理点事
我刚在平安保险面试客服岗位,可面试官说要缴
钢筋混凝土高层建筑结构的最大适用高度分为A
人生有几多愁?
为什么 -- 电脑模拟ps2战神2 -- 键盘上的方
全球气候变暖会导致生物多样性增多。
陇吉玛地址在什么地方,想过去办事
推荐资讯
三星j5锁屏怎么解
根据地饮吧地址在哪,我要去那里办事
欧翔仁品正新加盟有扶持吗?
判断json内有多少个数组
永定路有个卖酱肘子的,在永定路的哪
北京兴华会计师事务所天津分所工资怎么样
朋友叫我帮他网贷拿我身份证银行卡,还不起了
一个女性朋友她失恋了找我说话,我不会安慰人
武林外传为什么有的任务放弃不了
买了全程的火车票,可以中途下车吗?
\"之子于归,宜其室家\"是什么意思?求大神帮助
中国太平财产保险有限公司这个地址在什么地方
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?