• ベストアンサー

シートは存在するのに、実行時エラー40036が発生

シートは存在するのに、実行時エラー40036が発生する エクセルで、「シート名」と言うシートは存在するのに、 Sheets("シート名").Select が「アプリケーション定義またはオブジェクト定義のエラー 」というエラーになります。 1度目のマクロは問題なく動くのですが、 同じプロシージャーをもう一度実行しようとするとエラーが発生します。 そもそも 実行時エラー40036と1004は何が違うのでしょうか? エクセル2010です。 再起動したら治ります。

質問者が選んだベストアンサー

  • ベストアンサー
  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.1

該当するコードの前後で何が実行されたのかが分からないのですが、複数のブックを開いていてシート名のあるブック以外がアクティブなときに Sheets("シート名").Select が実行されたとかということは無いですか ちなみに、Sheeet2を開いていてSheet1のプロシージャでRange("A1").Selectなんて使うと実行時エラー1004がでます。

vdrqmaqbehg
質問者

お礼

普通はやっぱし1004ですよね。 >、複数のブックを開いていてシート名のあるブック以外がアクティブなときに Sheets("シート名").Select これはないんです・・・

その他の回答 (1)

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.2

全体がわからないのでなんとも言えませんが 取り合えず Sheets("シート名").Select の前に Sheets("シート名").Activate とか入れてみるとか 思いっきり Workbooks("ブック名.xlsx").Sheets("シート名").Activate とか…

vdrqmaqbehg
質問者

お礼

ご回答ありがとうございました。

関連するQ&A

専門家に質問してみよう