• ベストアンサー

エクセル2007にてマクロを使用して

エクセル2007にてマクロを使用して 選択範囲に文字があれば文字に色をつけたいのですが、どのようにすればよいでしょうか? 条件付き書式で出来るのは分かるのですが、マクロで範囲指定してやりたいのですが、お願いします

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

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

For Each ~ Nextを使って、、、 '----------------------------------------- Sub Test()   Dim Rng As Range   For Each Rng In Range("C14:K21")     If Rng.Value <> "" Then        Rng.Interior.ColorIndex = 6     Else        Rng.Interior.ColorIndex = xlNone     End If   Next Rng End Sub '-------------------------------------------- 手動で選択した範囲なら、   For Each Rng In Selection.Cells 以上です。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

こういう課題は、初心者はVBAでやらないほうが良い。 セルの値が変化したときに、自動で対応するコードが大変。イベントの考えは学習済みですか。 たとえそれらを使ってもデータの変更は捉えにくいものだ。 「条件付き書式」の機能はそれらに対応している。 ーー VBAでやるといっても、既出の回答のようなセルの値を一々聞いて色設定するのでなく、 条件付書式の設定操作そのものを、マクロの記録を採って知り、実情に合わせて、必要部分を修正するなどのコードが良かろう。 セル範囲もSelectionの表現で一般化出来ないか考えてみる。 >マクロで範囲指定してやりたいのですが 毎回指定する範囲が変わるということか?

  • TNK7800
  • ベストアンサー率19% (13/66)
回答No.1

Sub test() If Selection.Value <> "" Then Selection.Font.ColorIndex = 3 End If End Sub

jpiclt4
質問者

補足

お忙しいところ、回答ありがとうございます 選択した範囲と、質問分にあるところは 範囲を任意で指定してという意味でございます C14:K27と指定して、その指定範囲の中に文字があれば色を着けるという 形にしたいと思ってますので よろしくおねがいします。

関連するQ&A

専門家に質問してみよう