値の取得のみ可能なプロパティに値を設定することはできません。


プロパティには、値を設定できない"読み取り専用"のものがあります。そのように、値の取得のみ可能なプロパティに、値を設定しようとすると、このエラーが発生します。

ただし、値の取得のみ可能なプロパティに、値を設定しようとしたとき、別のエラーが発生することもあります。

Sub Sample()
    Range("A1").Text = "tanaka"
End Sub

RangeオブジェクトのTextプロパティは、値の取得のみ可能なプロパティです。そこに値を設定しようとしているので当然エラーなのですが、こちらはコンパイルエラーではなく、実行時エラーとなりました。しかも、プロパティが読み取り専用で値を設定できない、というミスとはおよそ関係のない「オブジェクトが必要です」なんてメッセージが表示されます。まぁ、内部的には確かにその通りなんでしょうけど、何とも不親切なエラーメッセージですね。

「オブジェクトが必要です」の解説