运行时错误1004:范围对象上的应用程序定义或对象定义错误

时间:2010-08-26 14:13:03

标签: excel vba

Dim collet As String
collet = ThisWorkbook.ColLetter(ColCount) + ":" + LTrim(Str(Target.Row))
Set my_r = Target(collet).Select

我在代码的最后一行收到运行时错误。无法找出原因

1 个答案:

答案 0 :(得分:1)

这将有助于确切地知道你在这里想要完成什么,但我可以提出一些建议。

  • 首先,当我认为您正在尝试执行单个单元格时,不需要冒号。所以collet应该包含类似“B2”的内容,而不是“B:2”。

  • 其次,当您在Select对象上调用Range时,它会将参数用作偏移量,而不是绝对引用。因此,如果Target是单元格B2,而collect是B2,那么Target("B2").Select实际上会选择单元格C3。

  • 最后,我假设存在Target对象,此代码位于事件处理程序中。确保通过选择不同的范围,您不会再次触发相同的事件。最终可能会出现无限循环,只有当您到达电子表格的底部或末尾时才会结束。此方案可能导致您看到的运行时错误1004.