Excelの条件付き書式で要件を満たす方法

このQ&Aのポイント
  • Excelの条件付き書式を使用して、特定の条件に合致するセルを塗りつぶす方法について教えてください。
  • 質問者は、特定の条件(例:営業部、女性など)に基づいて、セルの塗りつぶしを自動化したいと考えています。
  • 現在、VLOOKUP関数を使用して条件付き書式を設定しようとしていますが、複数の条件の一致に対応するためにワイルドカードを使用しようとしていますが、うまくいっていません。他の関数を使用する方法や、データの配置方法についてアドバイスをいただけますか?
回答を見る
  • ベストアンサー

excelの条件付き書式でこれをやりたい!!!

すみません、助けてください。 Excelの条件付き書式で(マクロとかではなくて条件付き書式で)やりたいことがありますが、 成功しません。お知恵を借りたいので、どうぞよろしくお願いします。 図の B7:B10 のように、西崎、田中、鈴木、木村 という人の名前が入っています。 B13:C17に、営業部は誰と誰、人事部は誰と誰、女性は誰と誰…というように、所属人員表があります。 お気づきのように、営業部の西崎は営業部の区分にも名前があり、女性なので女性の区分にも入っています。 やりたいことは、 B3に営業部という区分を入力したとき、B13:C17の所属人員表によれば営業部なので西崎と鈴木が該当。B7:B10にあるリスト中の該当者は、条件付き書式で塗りつぶしがかかる。。。 女性という区分を入力したのなら、それに該当する西崎,鈴木木村,に塗りつぶしがか。。。 ということをやりたいのです。 (B3は、入力規則を使ってリスト選択できるようにしようと思っています) 条件付き書式を「数式で」にし、関数などを駆使してこれを実現したいのですが、 うまくできません。 条件付き書式内で、下記のような数式を書いてみました。 =$B7=VLOOKUP($B$3,$B$14:$C$17,2) こうすると、B13:C17の所属人員表において、所属人員が1名ならば成功します。 しかし、ここでは複数人いるため、ワイルドカード「*」を使えないか?と思ってみましたが、 =*$B7*=VLOOKUP($B$3,$B$14:$C$17,2) ="*"&$B7&"*"=VLOOKUP($B$3,$B$14:$C$17,2) =("*"&$B7&"*")=VLOOKUP($B$3,$B$14:$C$17,2) こんな風に書いてみても、うまくいっていません。 VLOOKUPにこだわらないので、ほかの関数でできるとか、 所属人員を1セルにカンマ区切りで全員書くのではなく、右方向(D列やE列)に一名ずつセルを分けて書いてもいいです。 どうにか成功する知恵を授けてください。 よろしくお願いします…

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

  • ベストアンサー
  • Cupper-2
  • ベストアンサー率29% (1342/4565)
回答No.1

確認する手順を整理してみましょう。 いきなり条件付き書式に関数式を書くのではなく、 空いているセルに関数式を書いて条件によって正しく  TRUE または FALSE になることを確認してから条件付き書式として書き込むと良いでしょう。 (基本的にセルに書き込む関数式がそのまま使えます) VLOOKUP関数で「営業」とか「女性」の欄に該当する「氏名一覧」を検索するのは大丈夫ですね。 検索できたら、その「氏名一覧」の中に「該当する名前があるか」を調べましょう。  ※質問者さんはこれができていないんですね。 文字列の中から特定の文字列を探すには・・・SEARCH関数を使えばOK。 VLOOKUP関数まではOKですので、これにSEARCH関数を組み合わせて   =SEARCH($B7,VLOOKUP($B$3,$B$14:$C$17,2,0),1) とでもしてみましょう。 どこか空いてるセルにコピペして動作を確認してみてください。 (当方、Excelを起動できる環境にありませんw)   条件に合えば1以上の数値   合わなければエラー が返ってきます。 エラーの場合、条件付き書式では条件不成立として扱われるので深く考えなくてOK。 コレで良ければそのまま条件付き書式の数式に入れちゃいましょう。 VLOOKUP関数で  VLOOKUP($B$3,$B$14:$C$17,2,0) と最後に「,0」を追加していますが、 これは昇順に並んでいない不特定の文字列を検索しているので検索条件にFALSEを設定するためです。 数値や昇順に並んでいる文字列ならTRUE(1)でも良いんですけどね。 でもって、この検索条件を省略するとTRUEとして検索しちゃうんです。 以外と見落としがちなんです。これ。

tanako-gi-
質問者

お礼

早くの回答、ありがとうございます。!(^^)! アドバイスいただいた =SEARCH($B7,VLOOKUP($B$3,$B$14:$C$17,2,0),1) という式で、一致すれば1以上が返ってくるのが確認できました。( *´艸`)すごいです!! 条件付き書式はB7からの人名リストに適用するので、 =SEARCH($B7,VLOOKUP($B$3,$B$14:$C$17,2,0),1) だけだと人名と1が一致しないのでできませんから、 返ってくる値が0以上なら一致したとみなす、という形にするため、 =0<SEARCH($B6,VLOOKUP($B$3,$B$12:$C$15,2,0),1) このようにしました。 サーチは知っていましたが、VLOOKUPにこだわりすぎていたのか、思いつきませんでした・・・・ 本当にとっても助かりました!! ベストアンサーにさせていただきます(^_-)-☆ ありがとうございました~~

関連するQ&A

  • エクセル2010条件付き書式の簡略化は?

    こんにちは。 私の会社ではExcel2010を使って毎月の商品の売り上げ個数をつけています。 具体的に言いますと、縦A列目に商品名、横1行目に年月をとっております。それで月毎に売り上げた個数の多い商品の1位、2位、3位を条件付き書式で下記のように色づけしています。 |ルール|書式|適用先| |上位1位|金色|=$B$2:$B$10000| |上位2位|銀色|=$B$2:$B$10000| |上位3位|銅色|=$B$2:$B$10000| これを毎月やっているので、 |ルール|書式|適用先| |上位1位|金色|=$C$2:$C$10000| |上位2位|銀色|=$C$2:$C$10000| |上位3位|銅色|=$C$2:$C$10000| と言う風に、毎月ごとに3つの条件付き書式が出来てしまいます。おかげで条件付き書式の数が半端ではありません。 ここで質問があるのですが、上記を簡略化して、1つの書式で売れた商品1位が金色、もう1つの書式で売れた商品2位が銀色、もう1つの書式で売れた商品3位が銅色などという条件付き書式は作れますでしょうか? 方法がありましたら、ご教示の程、何卒よろしくお願い申し上げます。

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

    Excel2010です。 条件付き書式で2つの条件が等しい時に発生する数式はありますでしょうか。 画像のように、「B1、C1」セルで2つの単語を指定して、B1=B列とC1=D列の条件が合った行のみE列の書式が変わるようにしたいです。 上手くいく数式がありましたらご伝授お願いしますm(_ _ )m

  • Excel2007 条件付き書式のコピー&ペースト

    仮)試験結果一覧表があります。 B列からF列までにそれぞれ点数が入力されています。 3行目から氏名が入力されている表です。    A      B   C  …  3 佐藤●●  60  80  4 鈴木●●  20  90    ・    ・  ・    ・    ・  ・ B列に条件付き書式次の値に等しい場合は赤色づけ 条件は=MAX($B$3:$B$12) B列の中の最高値に赤をつける。 これをC列D列にも同じ条件付き書式をしたいのですが、 コピー後、形式を選択では該当するものが見当たりません。 どのようにしたら、条件付き書式をコピーできるか ご教授願います。

  • エクセル 条件付き書式でVLOOKUPの使い方?

    エクセルで下記の様にA列に文字列が有り、B列と同じ文字列が有る場合 にA列の該当箇所のフォントの色などを変更したいのですが、やり方が 解りません。 A列の文字列は、今後どんどん増えて行きますが、B列の文字列は100個 程です。  A   B 1 254 584 2 257 A58 3 846 GF8 4 A89 665 5 Y89 895 6 R56 7 584 8 PRE どうか宜しくお願い致します。との質問に対し下記の回答を頂いて解決出来たと思われたのですが、数字のみの値に対しては うまく行くのですが、アルファベットが含まれるとうまく行きません。 ------先ほどの質問の回答---  条件付き書式を使いますが、まずA1を選択、「書式」→「条件付き書式」で数式にして下記を入力、書式をクリック、フォントで色を選択してOKを押す。 =VLOOKUP(A1,$B$1:$B$100,1,0) 次に、A1をコピーして列のAをクリックする。「書式」→「形式を選択して貼り付け」で「書式」を選択。

  • 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も土日であれば網掛けにする方法があれば アドバイスいただけますでしょうか。 (自動では無理なようでしたら地道に網掛けしていくとします。) よろしくお願い致します。

  • エクセル2007 条件付き書式

    エクセル2007の条件付き書式で教えてください。 エクセル表で時間計算をしたいのですが、手入力した時間の合計があるセルの時間と違っていた場合に条件付き書式でセルに色をつけたいのですが方法がわかりません。 A1 開始時間 B1 終了時間 C1時間計算(B1+1-A1) D1事務a E1事務b F1事務c のようなエクセル表をつくり、C1以外の部分は手入力してます。 D1+E1+F1の入力がC1の自動計算部分と違っていた場合に色をつけてわかるようにしたいです。 条件付き書式のC1のセルの値がD1+E1+F1と違ったらというのを使ったのですが、計算式が入っているせいか思ったように機能してくれません。 どのようにすればできますでしょうか?また条件付き書式で数式を使う場合はどのようにすればよいでしょうか?アドバイスお願いいたします。

  • EXCEL 条件付書式?

    請求書管理表を作成しています。以下のような表でC列が締め日を過ぎても空欄であれば、締め日当日から3日後までは黄色の塗りつぶし、4日以降は赤の塗りつぶしとしたいのですが条件付書式を使っても数式が間違っているのかうまくいきません。何か良い方法があれば教えてください。 A列 取引先名 B列 締め日 C列 請求書を発行したかどうかの確認欄 B列は取引先に応じた締め日をVLOOKUPを使用して返すようにしてあります。(20、末と表示しています)

  • エクセルの条件付き書式の設定について

    いつもお世話になっております。 エクセル2007を使っていますが、エクセルの条件付き書式設定について伺います。 Sheet1 A列  B列 A    a B    b C    c Sheet2 A列  B列 B    c A    a D    b C    c のような2つのシートがあり。 Sheet2でSheet1と同じ項目になるのは2行目と4行目ですが、この2行目と4行目を条件付き書式で設定する方法はありますでしょうか? どうぞよろしくお願いいたします。

  • Excel 条件付き書式のコピー

    [条件付き書式]の使い方は分かっているのですが(と思います)、ある条件(数式)を入れて他のセルにコピーすると、参照しているセルが絶対値になってしまいます。 ちょっと上手く説明できないのですが。。。 ----------------------- A列   B列    C列 001  あいうえお  A 002  かきくけこ  B 003  さしすせそ  B 004  たちつてと  A ----------------------- エクセルの表は上記のようになっていて、C列の値が[A]の場合はA列のセルのパターンを赤にする、というような事をやりたいと思っています。 それで[001]のセルに条件付き書式で"数式が[=$C$1="A"]"という条件を付け、形式で書式だけ選択して他のA列のセルにコピーすると[002][003][004]・・・と全部に[$C$1]という値を参照する条件がコピーされてしまいます。それを、それぞれの行のC列を参照するようにするには、どうしたら良いでしょうか? 説明が上手くなくて長くなってすみません。 よろしくお願いします。

  • エクセル2003の条件付き書式設定についての質問です。

    エクセル2003の条件付き書式設定についての質問です。 A列に人の名前、B列には1,2,3の区分けの番号を入力します。B列の値が1であれば該当するA列のセルを黄色、B列の値が2であれば該当するA列のセルを青とかにする方法を教えて下さい。 B列が1であれば、そのセルを黄色とかにすることは条件付き書式でできますが、B列の値を参照してその結果に基づいてA列に条件付き書式を設定する方法が知りたいということなのですが。