オブジェクトが必要です。」というエラーになることがあります。対象のオブジェクトのプロパティやメソッドを使おうとした際に、そのオブジェクトがEmptyだった場合に発生します。構文エラーのためコードの修正が必要です。エラーの原因クラスのプロパティやメソッドは、その親となるオブジェクトが認識できないと動作できません。Variant型の変数に対してクラス変数が設定されていないことが原因で、多くの場合は変数へのコピー時のSetステートメントの付け忘れが原因です。オブジェクトを変数にコピーするにはSetステートメントを使う必要があるのですが、Setを書かずにただの代入になっている場合にこのエラーが発生します。Variant型の場合はエラー424になりますが、Object型変数でSetを付け忘れた場合はエラー91になります。以下はエラー424が発生するコードです。Sub5行目でA1セルを変数にコピーしているように見えますが、実際はそうなっていません。Setがないため変数への代入とみなされ、Rangeオブジェクトでプロパティが指定されていない場合はValueプロパティであるString型の文字列が代入されます。そのため、5行目は以下のコードと同じ意味になります。上記のコードのようにセルを代入したい場合や、そのほかにもワークシートやブックなどのオブジェクトを変数にコピーする場合はSetステートメントを使わなければなりません。以下のコードの7行目が正しく修正したコードになります。Excel作業をVBAで効率化シェアお問合わせTOPへ。