[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『隣のセルが空白ならばそのセルに色を付けたいんですけど』(POPI)
A列とB列にそれぞれデータが登録されていますが、条件としてA列にデータ登録があ りB列が空白のセルである場合、 そのB列の空白セルを黄色にしたいのです。 データが登録される行数に毎日変動があるので、B列に条件付書式で空白を黄色にする で設定すると簡単なんですが、条件付書式の行数を指定しなければいけないVBAにす ると、A列にデータが無くても色が付いてしまうので、ちょっとカッコ悪くなっちゃい ます。スッキリさせるための方法を教えていただけませんか、お願いします。
B列の条件付書式を 「A列が空欄でない 且つ B列が空欄である」 と言う条件にするのでは駄目なのですかね? [ 数式が ▼] [ =(A1<>"")*(B1="") ]
(HANA)
(HANA)さん、いろいろとありがとうございます。 望みどおりのマクロが出来ました。 本当に感謝です。 できれば今後のために、ちょっと解説していただければありがたいのですが、でも、も う夜も遅いですし・・・ ちなみに、=(A1<>"")*(B1="") の<>の意味だけでも教えてもらいたいんですけど?
(POPI)
A1>1 A1が1より大きい A1<1 A1が1より小さい A1<>1 A1が1以外 ""は未入力・または文字列長0の空白文字列ですから、 「A1<>""」は「A1が空白以外」=「A列に(空白文字列以外の)データ登録があり」 (みやほりん)(-_∂)b @早起き
みやほりんさん、解説有り難う御座いました。
ちなみに、エクセルヘルプには以下の様に書いてあります。
比較演算子 次に挙げる比較演算子は、2 つの値を比較し、 結果として TRUE または FALSE の論理値を返します。 比較演算子 内容 (使用例) = (等号) 左辺と右辺が等しい (A1=B1) > (〜より大きい) 左辺が右辺よりも大きい (A1>B1) < (〜より小さい) 左辺が右辺よりも小さい (A1<B1) >= (〜以上) 左辺が右辺以上である (A1>=B1) <= (〜以下) 左辺が右辺以下である (A1<=B1) <> (不等号) 左辺と右辺が等しくない (A1<>B1)
また、返された論理値を四則演算すると TRUE = 1 , FALSE = 0 として扱われます。
今回は(A1<>"")の結果と(B1="")の結果を掛け算しているので 一つでもFALSEが含まれていた場合、結果は「0」になり 両方がTRUEの場合にのみ「1」になります。 TRUE * TRUE = 1 * 1 = 1 TRUE * FALSE = 1 * 0 = 0 FALSE * TRUE = 0 * 1 = 0 FALSE * FALSE = 0 * 0 = 0
条件付書式の設定では、 「条件が真のときに使用する書式」を設定しますが 条件に数式を使用した場合、 結果がTRUE又は、0以外の数値の時に、書式が適用されます。
「且つ」を表すのに今回は「*」を使用しましたが AND関数を使用して「=AND(A1<>"",B1="")」の様にしても 同じ結果になると思います。 AND関数を使用するので、数式の結果は「TRUE」or「FALSE」になりますが。
これらの式を直接セルに入力して、結果を確認してみても良いかもしれません。
(HANA)
(HANA)さん、ありがとうございます。 ヘルプを参照する時もあるんですが、なんか表現が難しくて・・・ 今後とも、よろしくお願いします。 (POPI)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.