You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VBA为变量赋值单元格值时触发下标越界错误如何解决

错误根因
  • 工作表名引用错误:你在Worksheets()的参数中多写了多余的感叹号,实际工作表名是Sheet1而非Sheet1!,Excel在当前工作簿的工作表集合中找不到对应名称的工作表,直接触发「下标越界」报错,这是你遇到问题的核心原因,和变量类型、单元格格式没有关联。
  • 单元格坐标参数错误:Cells(行索引, 列索引)的行索引从1开始计数,B2对应的是第2行、第2列,你写的Cells(1, 2)实际对应的是B1单元格,即使修正工作表名也取不到你要的B2数值。
修复后代码
num_g = Worksheets("Sheet1").Cells(2, 2).Value
补充说明

如果后续要替换行参数为计数器变量,直接把行索引位置换成对应的变量即可,示例如下:

Dim i As Integer
For i = 2 To 100 ' 示例循环区间
    num_g = Worksheets("Sheet1").Cells(i, 2).Value
    ' 后续逻辑
Next i

内容的提问来源于stack exchange,提问作者MConvery

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 02:15:03