• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:オブジェクトが必要???)

オブジェクトが必要???

このQ&Aのポイント
  • Excel VBAでデータの比較と抽出を行うコードを作成しましたが、「実行エラー:424 オブジェクトが必要です」と表示され動作しません。シート名を指定したり、他の試みもしましたが解決できません。どうすれば良いでしょうか?
  • Excel VBAで「実行エラー:424 オブジェクトが必要です」というエラーが発生しています。データ比較と抽出を行うコードを作成したのですが、どうもうまくいきません。シート名を追加したり、他の方法も試しましたが解決できません。何か良い解決策はありますか?
  • Excel VBAでデータの比較と抽出を行うコードを作成しましたが、「実行エラー:424 オブジェクトが必要です」というエラーメッセージが表示されてしまいます。シート名を追加したり、いくつかの方法を試しましたが、どうにもうまくいきません。どうすればエラーを解消できるでしょうか?

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

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 コード中のi、j、nは(おそらく整数型の)変数です。 (変数の型はちゃんと指定しましょう。例→Dim i As Longなど) したがって、 Range("Ai") という表現は出来ません。 Rangeの引数は文字列です。文字列は「"」で括られます その「"」の中に変数を入れてはいけません。 変数でセルを指定する場合は、Cellsプロパティを使用する方が便利です。 Cellsプロパティは、 Cells(行番号,列番号) と指定します。(行番号と列番号はR1C1形式の番号になります。) 例えば、 A1→Cells(1,1) E3→Cells(3,5) となります。 したがって、A列のi行なら、 Cells(i,1) になります。 あと、Cellsプロパティ(Rangeも)にシート名を付ける場合は、 Worksheets("シート名").Cells(i,1) のようにします。

tomjap
質問者

お礼

上記の注意点を踏まえて作り直したらうまく行きました。初心者なモノで、なにやらおかしな事をやっていたみたいです。ありがとうございます。

関連するQ&A