• ベストアンサー

エクセルのマクロ

エクセルのマクロを使いA行のセルの日付が今日の日付より30日以内のときはセルの色を赤くするにはどうすればよいのでしょうか?

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

  • ベストアンサー
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

>A行のセルの日付が今日の日付より30日以内のときはセルの色を赤くする 質問がA列なのか 1行目なのかわかりませんが、この様なことは条件付書式の設定で行います。 A列に日付が並んでいるとして、A列を選択 「書式」「条件付書式」でウィザード 左側の 値を を 数式に変えて =TODAY()-A1<3 と入れて 書式 パターン で ご希望の色を選択して OK します。

GC-8
質問者

お礼

ありがとうございました!できました!!

その他の回答 (2)

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

条件付書式の操作をして、マクロの記録をとってみましたか。マクロの質問する前にはそれぐらい取ってから疑問点を質問してください。 30前は日付けはエクセルでは日付シリアル値という正整数なので、30を引いた数がその日の日付シリアル値です。 >以内のときは があいまいだが。 >セルの色を赤く 下の文字が読みにくいよ。 ーー D1には =TODAY()+30 マクロの記録は下記のようなものになるだろう。 Sub Macro1() Range("A1:A12").Select Selection.FormatConditions.Delete Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _ Formula1:="=$D$1" Selection.FormatConditions(1).Interior.ColorIndex = 6 End Sub もちろん別報で、各セルの値をIFで聞いて、大ならInterior.ColorIndex = 6にする方法もあるが、上記を勉強しないと発展性が無い。

GC-8
質問者

お礼

ありがとうございました!できました!!もっと勉強します。

  • jo-zen
  • ベストアンサー率42% (848/1995)
回答No.2

マクロじゃなきゃだめですか?その条件の時に。セルの色を赤くするだけなら、条件付き書式でできると思うのですが・・・。

GC-8
質問者

お礼

ありがとうございました!できました!!

関連するQ&A