【发布时间】:2011-10-20 05:32:28
【问题描述】:
我遇到了特定代码行的问题:
ActiveSheet.Range("A" & rowCount & ":" & Mid(alphabet, totHdrLngth, 1) & belowRowCount)
其中Alphabet是一个包含大写字母A到Z的字符串。
我不断收到以下错误:
Run-time error '5':
Invalid Procedure call or argument
我尝试创建一个字符串“inRange”并将代码更改为:
inRange = "A" & rowCount & ":" & Mid(alphabet, totHdrLngth, 1) & belowRowCount
curRange = ActiveSheet.Range(inRange)
但这并没有帮助(因为我认为它不会)。有什么建议吗?
【问题讨论】:
-
你能不能用
Debug.Print inRange把inRange的值放到调试窗口中(ctrl+g)? -
嗯.. 在调试窗口中看不到任何内容。在调试模式下将光标运行在“inRange”上并说字符串为空 (inRange = "")
-
我只是想知道当你调用 range 时范围字符串的样子,也许你可以 MsgBox 它什么的。
-
inRange 打印为空(没有显示)
-
当你给一个
类型的变量赋值时,你需要使用Set关键字。所以 curRange 分配看起来需要一个。没有它,您将收到您描述的错误“对象变量或带有块”错误。
标签: variables excel range concatenation vba