0

ワークブックの 1 つで見つけた奇妙なバグをデバッグするのに助けが必要です。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」をランダムに開いたときに問題が発生し、「 test1" したがって、"test2" を開くと、"test2" の行数を示すメッセージ ボックスが表示され、次のエラー メッセージが表示されます。"RUN time error 9" Subscript out of range" 修正できる方法はありますかこれにより、「test2」は呼び出されず、「test1」のみが呼び出されます

4

1 に答える 1

1

ThisWorkbook.Worksheets("SalesContest").Range("A3:A" & lastRow).Clearコードが実行されているワークブックに適用されていることを確認するために使用できます。

于 2013-08-19T20:31:22.577 に答える