• ベストアンサー

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割位のヒントを頂けないでしょうか…。 欲張りなお願いで申し訳ありませんが宜しくお願い致します。

関連するQ&A

  • 特定の日付より2ヶ月経過したセルを目立たせたい

    Excel2010使用です A1のセルに日付がはいっています。 2015/06/17と入力→書式設定で平成27年6月17日と表示 この日付より2ヶ月経過したセルの書式を変えたいのですが 条件付き書式でどのような式になりますでしょうか。 宜しくお願い致します。

  • 日付によるセルの色付け

    セルに18/7/18のように 日付を入力しています。 このセルに19/1/12 または単に19と入力した場合 (とにかく先頭に19と入力した場合) そのセルに特定の色をつけたいと思っています。 条件付書式で設定したいと思いますが どうすればいいでしょうか?

  • 日付データとセル着色

    セルに日付を入力しておき、その日から15日前になったらそのセルを黄色で表示し、またその日以降は赤を表示したいのですが、設定の仕方を教えてください。 OSはWIN98、エクセル97です。

  • マクロ:範囲内のセルを1つずつ編集する

    EXCEL2003を使っています。 マクロは全くの初心者です。 VBはVB.NETを少しかじった程度です。 A1:A30に値1、B1:B30に値2が入力されています。 (1)B1の値がA1より大きい場合セルの背景色を青色に変更。 (2)B1の値がA1より小さい場合セルの背景色を赤色に変更。 (1)(2)の動作をB1からB30まで順番に行いたいのです。 条件付書式のやり方は分かります。 ですが条件付書式の場合単独のセルを指定する方法しか分かりません。 範囲内のセル全てに1つずつ条件付書式を適用するマクロを組みたいのです。 どなかた知恵を貸して下さい。 宜しくお願いします。

  • エクセルのセルの書式設定(日付)について

    エクセルで請求書を作っています。 セルの書式設定で、日付を○/○と表示させるように設定しました。 でも、例えば「0108」と入力しても「4/17」と表示されます。 どうも1900年で表示されているようです。どこをどう設定すれば、打ち込んだ日付通りに変換されるでしょうか。 宜しくお願い致します。

  • 条件付き書式 日付のセルを塗りつぶし

    Excel2007 ある列に 日付、文字列、数値が入力されています。 条件付き書式で日付の入力されているセルのみ塗りつぶしたい。 その方法を教えてください。

  • エクセルで本日の日付の行に色をつけたい

    エクセルで民宿の予約表を作成しています。 Bの列に日付、横にFからAXまで部屋番号となっています。 条件付書式を使って本日の日付に色をつけることは出来たのですが、 日付のセルだけでなく"日付の行"に色をつけたいのです。 エクセル技道場というサイトで"本日の日の列に色をつける" http://www2.odn.ne.jp/excel/waza/cformat.html#SEC30 という"行"ではなく"列"のやり方がのっていたので、このやり方が使えないか試してみましたがうまくいきません。 どなたかご教授願います。

  • エクセルの日付

    書式設定 yy/mm/dd にしてあります。 今年の日付を入れる場合は、4/1 で、自動的に10/04/01に変換されますが、 例えば去年の日付を入れる場合、09/4/1と入力しなければなりません。 4/1 で、09/04/01と表示されるにはどうしたらよいでしょうか。

  • EXCELでの日付表示で

    EXCELで日付表示する際に、「0208」と入れたら「2/8」となるようにしたいのですが、 「セルの書式設定」の「ユーザー定義」や「日付」では西暦から入力しないと 「2/8」のようにはなりません。 それも「2005/02/08」と入力して初めて「2/8」となるのなら 初めから「2/8」と直接入力した方が早いです。 要は「/」(スラッシュ)をイチイチ入力したくないので、 「0208」→「2/8」となるようにしたいのですが、その場合 どういう書式設定をすればいいのでしょうか? もしかすると、日付というより文字列として考えた方がいいのかも しれませんが、分かる方教えて下さい。

  • エクセルで日数の経過を色分けしたい

    OKWaveではもう何度も出ているような質問と思いますが、初心者ですいません。 セルは、例えばA1で結構ですが、初めに記入した日付が「本日」から一ヶ月前は赤色、一ヶ月前~2週間前までは黄色、2週間~1週間前までは緑色というふうに自動で色が変化するようにしたいのです。条件付き書式でやろうと試みたのですがうまくいきませんでした。(入力式がいけないのだと思いますが・・・)できれば「本日」はセルに表示させたくないのですが(これってマクロになるのでしょうか?)

専門家に質問してみよう