VBA中的运行时9错误

时间:2014-02-07 16:05:36

标签: vba runtime

我编写了以下代码行来查找工作簿中C列的最后一行:

lastRow1 = Workbooks("ExcelBook").Worksheets("Prices").Range("C65536").End(xlUp).Row

当我在自己的计算机上运行我的宏(Excel 2010,Windows 8)时,它工作正常。但是,我将它发送给我的客户端(Excel 2007,Windows 7),他得到了“运行时错误9 - 下标超出范围”

如果我在Excel for Mac上运行宏,也会发生同样的事情......有人可以帮忙吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

我遇到了类似的问题,宏在某些计算机上无法运行 - 它可能需要带有扩展名的完整工作簿名称。试试

lastRow1 = Workbooks("ExcelBook.xlsx").Worksheets("Prices").Range("C65536").End(xlUp).Row

答案 1 :(得分:0)

我与

有一个非常相似的问题
dstring = Workbooks("name").Worksheets("name2").Range("name3")

并通过添加扩展名

解决了该问题
dstring = Workbooks("name.xlsm").Worksheets("name2").Range("name3")