• ベストアンサー

VBA

エクセルVBAの質問です。 条件付書式で、今日の日付以上だとピンクの網掛けにする。 としました。 だけど、これだと空白のセルにもピンクが塗られてしまいます。 空白は何も色を塗らないとするにはどうするのですか。 以上の全てのことができるVBAプログラミングの式はどう書くか教えてください。

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

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

では、日付が入力されたセル限定で、今日の日付以上だとそのセルをピンクに塗りつぶすというVBAの例です。 Sub test() Dim c As Range With ActiveSheet For Each c In .UsedRange If IsDate(c) Then If c >= Date Then c.Interior.ColorIndex = 7 c.Interior.Pattern = xlSolid End If End If Next End With End Sub

t02n
質問者

お礼

ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.3

こんにちは。 > これだと空白のセルにもピンクが塗られてしまいます。 条件付き書式ですが、設定する数式を工夫すると良いかと思います。 一例)「数式が」「=AND(A1<>"",A1>TODAY())」 ご参考までに。

t02n
質問者

お礼

ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

#1です。 こっちのほうがいいかも・・・。 Sub test() Dim c As Range With ActiveSheet For Each c In .UsedRange If IsDate(c) Then c.Interior.Pattern = xlSolid If c >= Date Then c.Interior.ColorIndex = 7 Else c.Interior.ColorIndex = 0 End If End If Next End With End Sub

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • VBA 条件付書式の条件にあっているか

    条件付書式の数式に該当したセルの内容のみ拾ってくるVBAの作成を 試みています。 アンケート用紙は以下のようになっています。 A1 男性     B1 年齢 A2 ///////// A3 A4 /////// A1の性別B1の年齢から判断して条件付書式下記のよう式が入っています。  (A2  =COUNTIF($A$1,"女*")>=1   A3  =COUNTIF($A$1,"男*")>=1   A4  =COUNTIF($A$1,"*男*")>+COUNTIF($B$1,"2*")>=1  ) ただその際にA2/A4は網掛けになっているのですが場合によって前回の 回答を消去せずにアンケート表が作成されていることがあり、網掛け部分の 数値も拾ってきてしまい集計表が正しくなくなってしまいます。 集計表に情報を取ってくる際に、条件付書式がTrueの場合、または書式 が白抜きになっている場合で条件分岐したいので教えてください。 方法としては下記のようになるかと考えています。 ・セルに条件付書式がひとつ以上設定されている。(今回は条件は一つです) ・その条件が、値か式か。(今回は式です) ・式であったら、その式をVBA上で実行してTrueかFalseか判断する  (または書式のタイプを取得する) ですが、書ける知識が乏しくて・・・ よろしくお願いします。

  • Excel の『条件付き書式』について

    いつもお世話になっております。 Excelで以下のような表を作成しています。 『条件付書式』について教えてください。  列A  列B  列C   日付  曜日  空白セル 列Aに日付を入力して、その日が土日であったらセルに網掛けをするように設定しています。 列Bは、列Aに日付を入力すると自動で曜日を表示するようにし また、土日であったら自然に網掛けになるようにしました。 (列A・列Bをドラッグして『条件付書式』で設定)  『条件付書式』は…     条件1=WEEKDAY(A○,2)=7     条件1=WEEKDAY(A○,2)=6 …で設定。 列Cも同様にしたいのですが、どうもうまくいきません。 列A・列B・列Cとドラッグさせて『条件付書式』にしたのですが 土日でなくても網掛けになってしまいます。 列Cも土日であれば網掛けにする方法があれば アドバイスいただけますでしょうか。 (自動では無理なようでしたら地道に網掛けしていくとします。) よろしくお願い致します。

  • Excelの条件付書式を教えて欲しい

    I4~N4のセルに●が1つでもあったら、G4のセルの色をピンクにする… というのは、エクセルでどのように式を入れればよいのでしょうか? 条件付書式を使うのかな、と思ったのですがやり方がわからず困っています。 エクセル2003を利用しています。教えてください。

  • VBA 条件付書式の条件にあっているか

    答えてねっとがなくなってしまったのですね、でこちらにたどり着きました。 ユーザー入力したアンケート(業者が作成)から集計表を作成しています。 A1 男性     B1 年齢 A2 ///////// A3 A4 /////// A1の性別B1の年齢から判断して条件付書式によりA3のみに答えを入力するよう白抜きになりA2/A4はもともとのフォーマットが網掛けになっています。 ただその際にA2/A4は網掛けになっているのですが場合によって回答が残っていることがあるので、集計表が正しくなくなってしまいます。 集計表に情報を取ってくる際に、条件付書式がTrueの場合、または書式 が白抜きになっている場合で条件分岐したいのですが、方法ご存知だったら教えてください。 方法としては下記のようになるかと考えています。 ・セルに条件付書式がひとつ以上設定されている。(今回は条件は一つです) ・その条件が、値か式か。(今回は式です) ・式であったら、その式をVBA上で実行してTrueかFalseか判断する  (または書式のタイプを取得する) ですが、書ける知識が乏しくて・・・ VBA本にもFormatConditionsは書いてなかったです。 よろしくお願いします。

  • エクセルの条件付書式

    こんにちは。 はじめて質問させていただきます。 セルD2が今日以前の日付の時別なセルに色をつける設定にしたくて、 条件付書式で「数式が」「=D2<TODAY()」としました。 これで今日以前の日付に色づけできるようになりましたが、空白のセルにもいろがついてしまいます。 空白のセルには色づけしたくない場合はどうすればよいでしょうか? 教えてください><

  • 条件付書式 しましまともう1つ書式を設定

    エクセルの表をしましま(1行ごとにグレー)にしたいのですが、 条件付書式で、"=AND(MOD(ROW(),2)=1)" を設定すればしましまにできるところまでは分かりました。 ですが、すでに、*の書いてあるセルを網掛けにする条件付書式が入っているセルがあります。 (条件付書式で、セルの値が 次の値に等しい ="*") *の入っているセルは、網掛けで、かつ、しましまにしたいのですが、 そのような設定は可能なのでしょうか?

  • エクセル

    こんにちは。素人なので教えて下さい。 仕事でエクセルで表を作成し使用していますが、 例えば、セルのA1に網掛けで色を付けたときに、 セルのB1が自動で同じ網掛けの色を方法はあるでしょうか? 条件付書式設定や関数などでは無理なのでしょうか? 宜しくお願いします。

  • Excelの条件付き書式について

    Excelの条件付書式について教えてください。 次のようなことをしたいです。 (1)10個のセルに次のような条件付書式を設定します。  ・条件1:セルの値が5以上だったらセルの塗りつぶし(パターン)を青色にする。  ・条件2:セルの値が5未満だったらセルの塗りつぶし(パターン)を赤色にする。 (2)別の1つのセルで上の10個のセルを監視して  すべてのセルが青色だったら"PASS"と表示する。  ひとつでも赤色のセルがあったら"FAIL"と表示する。 VBAを使用して、条件付書式が設定されたセルを参照し、 どちらの条件付書式が適用されているのか調べられるのなら、 それでもかまいません。 条件付書式でセルの色(パターン)を設定した場合、 セルの.Interior.ColorIndex 及び PatternColorを参照しても、 塗りつぶしはされてないという扱いになっているようです。 なにか方法があるでしょうか?

  • VBA 条件付き書式で空欄は適用除外したい

    Excel2002又は2003のVBAにおいて条件付き書式をマクロを組んで設定しているのですが、 設定1:5以下の場合、青 設定2:-10以下の場合、赤 のように設定したのですが、空欄(未入力状態のセル)も青くなってしまいます。 空欄になっているセルに半角スペース等を入れれば色は付かなくなることを確認はしたのですが、条件付書式にさらに条件を追加する等で、この現象を回避する方法はないでしょうか? なお、マクロで条件付書式の設定してあるセルを選択し、条件付書式を一括で書き換えています(色の設定や範囲指定を別設定で変えられるように)。 そのため、条件付き書式でエクセル上の操作で行う設定ではなくマクロで選択したセルに書式の設定を行うようにしたいのですが・・・ ※書き込むカテゴリに少し迷ったのですが、こちらで質問させていただきます。 よろしくお願いします。

  • VBAでセルに色付けは?

    教えてください エクセルの条件付き書式では下記の 事ができません。 VBAでセルに色をつける 方法を教えて欲しいのですが。 例 セルA1 に 10   セルB1 に 入れた数字が      10以下なら   青   11から20なら 赤   21から25なら 黄   26以上なら   ピンク   と言う感じで  B1 のセルに   その数字と色を表示したいのですが   最終的には8色表示にしたいです。   よろしくお願いします   WINXP  EXCLは2002です

このQ&Aのポイント
  • MFC-J903Nの印刷中に紙詰まり表示が出るが、実際には紙詰まりがない場合について解決策を紹介します。
  • MFC-J903Nの紙詰まり表示で印刷が進まない問題に直面した場合、スマホのブラザーのアプリから接続している場合は、アプリの設定を確認することをおすすめします。
  • MFC-J903Nの印刷トラブルを解決するために、関連するソフト・アプリの設定やスマートフォンのOSのバージョンを確認することも重要です。
回答を見る