• ベストアンサー

EXCELのマクロにより日付経過でセルに着色

EXCEL2003を使用しています。 K・M・O・Q・S列に日付を入力していまして 入力日付から本日が1年以上経過しているセルに赤、 入力日付から本日があと1ヶ月以内で1年の場合は橙、 入力日付から本日があと2ヶ月で以内1年の場合は黄、 入力日付から本日があと3ヶ月で以内1年の場合は黄緑 と設定したいと思っております。 条件付書式だと3つまでしか設定ができず困っております。 どなたかご教授願えませんでしょうか? 宜しくお願い致します。

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

  • ベストアンサー
  • suz83238
  • ベストアンサー率30% (197/656)
回答No.1

ヒントだけ たとえば、A1~A10まで日付が入っているとして、 下記は1年以上のものを赤くします。 あとは、これと同じです。列がK・M・O・Q・S列と別れているならUNIONを使えばOKです。 Sub xxx() Dim sh As Range Dim s1 As Date, s2 As Date For Each sh In Range("a1:a10") s1 = sh.Value s2 = DateSerial(Year(Date) - 1, Month(Date), Day(Date)) If s2 > s1 Then sh.Interior.ColorIndex = 3 Next End Sub

ajiponpon
質問者

お礼

ありがとうございました。

ajiponpon
質問者

補足

回答有難う御座います。 遅くなり申し訳ありません。 本当は自分で頑張ってヒントを頼りに後は調べたりでやりたいのですが、 他の仕事も切迫しており余裕がありません…のでずばり伺います! UNIONを使ったり、これをEXCELを開いた時に実行する方法が分からないのです…。 出来ましたら9割位のヒントを頂けないでしょうか…。 欲張りなお願いで申し訳ありませんが宜しくお願い致します。