2/27/2017

Excel。Format。条件付き書式で文字を含む場合行単位で塗りつぶしを設定するには?

Excel。条件付き書式で文字を含む場合行単位で塗りつぶしを設定するには?

<条件付き書式・FIND関数>

次のような表があります。

大田区に住んでいる人の行全体を分かりやすくするために、
塗りつぶしをしたい場合は、条件付き書式を使うと便利ですぐに、
問題解決できるように思えるのですが、そう簡単というわけでも実はないのです。

まず、A3:C9を選択して、条件付き書式から、

セルの強調表示ルールの文字列を選択しましょう。

文字列ダイアログボックスが表示されてきますので、
ボックスに大田区と入力して書式を設定したら、OKボタンをクリックしましょう。

大田区のデータが、
条件付き書式によってわかりやすくなったのはいいのですが、
今回の目標は、データの行単位ということで、一行を塗りつぶしたいわけです。

残念ながら、この文字列では、
セルを塗りつぶすことは出来るのですが、
該当するそのレコードを塗りつぶすことが出来ないのです。

では、条件付き書式が無い状態に戻して、考えてみましょう。

まず、行単位で塗りつぶすためには、
セル参照させる必要がありますので、
数式を使った条件付き書式になるということ、

そして、セル内に該当する文字、
今回は、大田区 という文字があるのか?ないのか?見つけるための関数。

FIND関数を使った数式を作る必要があるということになるわけです。

条件付き書式で数式を使う場合、
関数挿入ダイアログボックスが使えませんので、
数式を直接入力する必要がありますが、
慣れていない方は、ちょっと大変なので、

まずは、数式を別のセルで作成して、
その数式をコピーする方が効率的だと思います。

では、D3にFIND関数の数式を作っていくことにしましょう。

D3をクリックして、FIND関数ダイアログボックスを表示しましょう。

検索文字列には、”大田区”
対処には、$C3

複合参照にしている理由は、条件付き書式で行単位で塗りつぶす為ですね。

列を固定するのがポイントでしたね。

それではOKボタンをクリックして数式をオートフィルでコピーしましょう。

すると大田区という文字がある場合には、
セル内の何文字目にあるのかという数値を算出してくれます。

ないものは、#VALUE!が表示されています。

ちなみに、D3の数式は、

=FIND("大田区",$C3)

この数式をコピーしておいて、条件付き書式を設定していきましょう。

A3:C9を範囲選択して、条件付き書式の新しいルールをクリックします。

新しい書式ルールダイアログボックスが表示されますので、
「数式を使用して、書式設定するセルを決定」を選択して、
ボックスに数式を貼りつけましょう。

そのあとに、塗りつぶしの書式を設定したら、OKボタンをクリックしてみましょう。

これで、行単位での塗りつぶしを設定することが出来ましたね。

このように、FIND関数と条件付き書式を合わせることで、
このようなこともできますよ。