• ベストアンサー

マクロについて

質問です。 A1~Z500の範囲に文字列が入っていて、そのうち「故障」を含む セルに色を付けるマクロを作りたいのですが、以下の様に入力すると 「オブジェクトが必要です」とエラーが出てしまいます。 初心者の為、何がおかしいのかすら分からない状態です。 よろしくお願いします。 Sub 検索() Dim fad As String, c As Range 選択範囲 = Range("A1:Z500") Set c = 選択範囲.Find(What:="故障", LookAt:=xlPart) If Not c Is Nothing Then fad = c.Address Do c.Interior.ColorIndex = 6 Set c = 選択範囲.FindNext(c) Loop Until c.Address = fad End If End Sub

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

  • ベストアンサー
  • myRange
  • ベストアンサー率71% (339/472)
回答No.2

  変数、"選択範囲"のオブジェクトのセットの仕方が間違いです。 Setステートメントを使わなければいけません。 Dim 選択範囲 As Range  '変数宣言もしておいたほうがいいでしょう Set 選択範囲 = Range("A1:Z500") 以上です。

myasa
質問者

お礼

早速の回答ありがとうございます。 おかげさまでエラーは出なくなりました。

その他の回答 (1)

回答No.1

>If Not c Is Nothing Then このチェックを >Set c = 選択範囲.FindNext(c) のあとでもしないからでは?

myasa
質問者

お礼

早速の回答ありがとうございます。

関連するQ&A

専門家に質問してみよう