Vba 单元格引用上的下标超出范围错误
我不明白为什么会出现错误:Vba 单元格引用上的下标超出范围错误,vba,excel,Vba,Excel,我不明白为什么会出现错误: Dim h As String h = Worksheets("beans").range("O11").Value.Offset(ref_count, 0) ref\u count在循环中使用,h在程序的其他地方传递。我得到一个运行时错误9下标超出范围错误,我不明白为什么 请帮帮我 谢谢。所以您当前的代码正在尝试偏移一个值 这是不可能的 您需要偏移范围并从这个新位置获取值。你离得很近,但不太近 代码应该如下所示: Dim h As String h = Works
Dim h As String
h = Worksheets("beans").range("O11").Value.Offset(ref_count, 0)
ref\u count
在循环中使用,h
在程序的其他地方传递。我得到一个运行时错误9下标超出范围错误,我不明白为什么
请帮帮我
谢谢。所以您当前的代码正在尝试偏移一个值 这是不可能的 您需要偏移范围并从这个新位置获取值。你离得很近,但不太近 代码应该如下所示:
Dim h As String
h = Worksheets("beans").range("o11").Offset(ref_count, 0).Value
范围(“零一一”)不是有效的单元格位置。你是说o(就像奥斯卡中的)one吗?很抱歉,它是一个“o”,我仍然得到相同的错误。你的工作表名为“beans”吗?确保工作表名称的开头或结尾没有空格(如“beans”或“beans”)。此外,您不能将.Offset放在.Value之后,您需要使用
h=Worksheets(“beans”).range(“o11”).Offset(ref\u count,0)。Value
我认为答案实际上是无效的范围对象属性分配层次结构,正如@tigeravatar在其评论中指出的,该评论应作为答案发布。对