ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索

下标越界错误9的常见情况和解决方法

已有 146 次阅读2023-11-15 11:20 |个人分类:VBA常见问题| 数组

  下标越界是我们在编写VBA代码时最常见的几个问题之一,针对这个问题我的排查思路和解决方法如下
  1. 数组本身默认是一维的,如果数组是多维的当然要写明第二个参数,如果数组是一维的,当我们往数组注入数据的时候不需要标明这点,但如果我们是由数组输出数据的时候要标明数组的维数,比如这段数组输出到字典中的代码就会报错误9“dic(arr(i)) = " ,如果像这样“dic(arr(i, 1)) = "" ”写就没问题了
  2. 在注入数据到数组的过程中,如果是循环注入,则要先用dim或者redim声明数组范围,不然也会报错错误9,如果是单元格范围的数据注入,则vba会自动计算数组的范围,则不需要定义数组范围了,另外如果redim后的数组大小和维数其中一个小于等于redim之前的数组的大小和维数,那么也会报错9
  3. 在用比如说is类型属性的时候,如果加上括号也会产生这样的错误,删掉括号即



路过

雷人

握手

鲜花

鸡蛋

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 免费注册

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-28 07:25 , Processed in 0.022422 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

返回顶部