Exce表格网

excel运行错误9下标越界(vba运行错误9下标越界)

来源:www.0djx.com  时间:2023-01-25 23:25   点击:160  编辑:表格网  手机版

1. vba运行错误9下标越界

Excel提示下标越界是VBA程序运行的一个错误提示,原因有以下几个:

1、引用了不存在的数组元素:下标比可能下标范围大或小,或是在应用程序中这一边的数组没有指定范围。

2、声明数组时没有指定元素的数目:引用了不存在的集合成员。

3、使用速写形式的下标,结果指定了错误的元素。

4、引用或操作的工作薄、工作表不存在。

2. VBA下标越界

1、在SHEET表内设置好按钮,并指定到宏。

2、在VBA编辑器内输入如下的代码。(此代码的含义为遍布区域内的单元格,如果为空格,则隐藏空格所在的整列。

3、在运行过程中出现了问题,下标越界,无法运行。

4、在代码中的“SHEET1”工作表根本没有,因为SHEET表的标签名称为“图表”,因此代码运行时找不到"SHEET1"工作表,所以提示下标越界。

5、点击异常提示下的“调试”按钮,将代码中“SHEET1”改为“图表”后再点按钮,运行宏,代码正常运行,无下表越界提示。注意事项:Excel虽然提供了大量的用户界面特性,但它仍然保留了第一款电子制表软件VisiCalc的特性:行、列组成单元格,数据、与数据相关的公式或者对其他单元格的绝对引用保存在单元格中。

3. vba报错下标越界

下标越界就是数组中的变量超出了数组的大小范围,要从变量上找原因

4. 运行错误9下标越界简单解决方法

我试过这个宏了,能用。下标越界的原因应该是你的excel文档中没有“不可删”这个工作表。更改工作表中的名称为不可删或者更改宏中“不可删”为数据源工作表的名称,比如“Sheet1”。

5. vba 运行时错误 下标越界

如果使用数组时,数组的下标超出数组的可取值范围就会出现这个错误,这个数组可以是自定义的也可以是系统自带的。

1.自定义数组:dimarr1(1to5)arr1(10)=555因为arr1数组为1到5,这里却是10,所以就会报下标越界错误。

2.系统自带的数组:一个excel工作表表有3张SheetSub下标越界()MsgBoxSheets(4).NameEndSub这里的Sheets(4)显然已经超出了3张Sheet,因此也会报下标越界错误。总之,有多种情况会引起“下标越界”的报错。下标越界错误大概有以下的原因和解决方法:  1.引用了不存在的数组元素。  2.下标比可能下标范围大或小,或是在应用程序中这一边的数组没有指定范围。检查数组的声明以确认其上界和下界。若使用的是重新指定范围的数组,应使用UBound和LBound函数来决定数组访问。如果索引指定为变量,应检查变量名的拼写。  

3.声明数组时没有指定元素的数目。  

4.引用了不存在的集合成员。试着使用ForEach...Next结构代替指定元素下标。使用速写形式的下标,结果指定了错误的元素。  

5.下标越界不存在对应的工作薄、工作表名称是否写正确。

6. vba错误代码9

运行时错误会 ‘32809’

应用程序定义或对象定义错误

坑我几天解决了

我用office365中的excel2016编辑的vba,一千多行,在excel2007上乱报错,无法正常运行,找了一天多找到了说明,要装补丁,

微软的解释:

不同版本装不同补丁:

KB2726958 Office 2013: December 9, 2014

KB2596927 Microsoft Office 2007 suite: December 9, 2014

KB2553154 Office 2010: December 9, 2014

装上后删除 %tmp%\Excel8.0\MSForms.exd 即可。

7. vba数组下标越界的解决办法

你的主要问题是

dim a(10)相当于定义了一个长度为10的数组. 因为你用Option Base 1声明了下标从1开始, 所以dim a(10) 相当于是 dim a(1 to 10);

dim i as Integer, 而i没有赋给初始值时, 默认赋值为0. 所以for i = i to 10第一个就开始从0循环, 就是a(0)了, 导致数组下标越界.

你是笔误了吧, 将for i = i to 10修改为for i = 1 to 10

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
用户名: 验证码:点击我更换图片