【问题标题】:issues with Run time error 9 on vba codevba 代码上的运行时错误 9 的问题
【发布时间】:2013-08-19 20:27:04
【问题描述】:

我需要帮助来调试我在我的一个工作簿上发现的一个奇怪的错误。我为一个excel文件写了一些vba代码,它以某种方式调用了一个不同的工作簿。举个例子,假设我有一个名为“test1”的excel文件,该文件有来自另一个名为“test2”的工作簿的一些引用以下代码仅适用于来自“test1”的工作簿

   lastRow = Cells(Rows.Count, 1).End(xlUp).Row ' will get the last row
   MsgBox (lastRow) 'wrote this for debugging purposes
   Worksheets("SalesContest").Range("A3:A" & lastRow).Clear

我有这段代码,所以它只能在“test1”文件中清除 A 行的内容但是当我随机打开“test2”并且它以某种方式在“test2”上运行上面的代码时出现了问题,即使它假设运行仅在“test1”上所以当我打开“test2”时,有一个消息框显示“test2”中的行数,它还给我以下错误消息“运行时错误 9”下标超出范围“有没有办法我可以解决这个问题,所以它不会调用“test2”,而只会调用“test1”

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    您可以使用ThisWorkbook.Worksheets("SalesContest").Range("A3:A" & lastRow).Clear 确保它适用于运行代码的工作簿。

    【讨论】:

    • 它修复了该错误消息。但我在“test1”上有一个代码,将结果输出到“test1”上的 col A 现在它在“test2”上输出代码..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多