总说我下标越界怎么回事VBA 我要选出b列所有和m相等的数据,把他们所在的行号写进数组b(n)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了总说我下标越界怎么回事VBA 我要选出b列所有和m相等的数据,把他们所在的行号写进数组b(n)相关的知识,希望对你有一定的参考价值。

我也是新手,一起学习;
(1)ReDim b(1 To n) As Integer '这段你最好加个判断如果N值为0,那个数组的定义是就是错误的,就会出现下标越界
(2)For a1 = 1 To 65536
If Cells(a1, 2).Value = Val(m) Then i = i + 1 and b(i) = a1 ‘这段我测试的结果是 最好要这么写
For a1 = 1 To 65536
If Cells(a1, 2).Value = Val(m) Then
i = i + 1
b(i) = a1
Else
End If
具体应该为什么出现下标越界我也不清楚(如果你测试出来可以分享给我下,谢谢)
(3)建议做个行数的判断每次都最65536次判断太浪费了。追问

谢谢,下标越界自己没了,我也不知道咋回事

参考技术A 两个语句同行连接用冒号,不是and
if cells(a1,2).value=val(m) then i =i+1: b(i)=al

作业九总结

一知识点总结:

1.二维数组的定义和引用

   类型名 数组名[行长度][列长度];

例如:int a[3] [2]; 3行2列,共6个元素。

引用:数组名[行下标][列下标]  行下标合理范围值是[0,行长度-1],列下标合理取值范围是[0,列长度-1]。注意下标不要越界。

2.二位数组的初始化

  分行赋值:类型名 数组名 [行长度][列长度]={{初值表0},.,{初值表k},.};例如:interesting啊[3][2]={{1,2,3},{4,5,6}};

  顺序赋值:类型名 数组名 [行长度][列长度]={初值表} 例如:啊[3][3]={1,2,3,4,5,6,7,8,9};

  主对角线:从矩阵左上角到右下角连线(i==j)
  上三角:主对角线以上的部分(i<=j)
  下三角:主对角线以下的部分(i>=j)
  副对角线:从矩阵右上角到左下角的连线(i+j==N-1)

3.判断回文

0代表字符‘\0’;

区分“a”和 ‘a‘,前者是字符串常量,包括‘a’和‘0’。

         后者是字符常量,只有一个字符,可以赋值给字符变量。

 

二实验心得

从次作业难度不大,都是上课老师讲得,稍微变形即可。作业只是检验我们上课听讲的效果。但真正学会知识点还得靠自己去搞懂,弄懂。继续看书吧,不会的上课问老师了。

以上是关于总说我下标越界怎么回事VBA 我要选出b列所有和m相等的数据,把他们所在的行号写进数组b(n)的主要内容,如果未能解决你的问题,请参考以下文章

keil编程中为啥总说我变量未定义? 不只是keil,C语言也经常有这种情况。根本不知道哪里错了

下标越界:‘[number:-1]’这个问题怎么解决啊,说具体点,好吗?

android开发,数组越界,可是怎么都找不到问题,求救

请VBA高手帮忙,我要在EXCEL中插入一个控件,每次只要点击这个控件就能实现下面的功能

想筛选出excel表格A表与B表内姓名与身份证号码相同的数据,那个啥函数不会用

VBA 中怎么只保护指定的单元格或者列