• ベストアンサー

EXCEL|文字を検索する・・・

EXCEL賢者のかたへ A   B 赤色 注意 青赤 注意 緑   - 黄色 注意 黄緑 注意 紫   - 上記は、A列に赤または、緑という文字があったら、B列で注意と表示するという内容です。 B列に入れる式を教えてください。

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

  • ベストアンサー
  • cj_mover
  • ベストアンサー率76% (292/381)
回答No.5

こんにちは。お邪魔します。 処理能で言ったら#4さんのが抜群のようですね。 編集能を重視しつつ処理能で中庸をいく数式という意図で書いてみました。   =IF(OR(COUNTIFS(A2,"*"&{"赤","緑"}&"*")),"注意","") Excel2003以前のバージョンなら   =IF(OR(COUNTIF(A2,"*"&{"赤","緑"}&"*")),"注意","") という普通の数式です。 セル参照は1カ所だけです。A2 の部分は適宜参照を書き換えてください。 例えば後から"黄"を追加する必要が生じたら、 {"赤","緑"} の部分を {"赤","緑","黄"} という風に書き換えるだけで簡単に済ませられる、 という特長があります。   Excel2003以前のバージョンをお使いで(COUNTIF関数を使わなくてはならないケースで)   この数式を数千箇所で使うという場合ならば、   COUNTIF関数はちょっと計算が重いので、お奨めしません。   その場合は#4さんのように条件をひとつひとつ書きだした方が軽いとは思います。   数百、程度であれば、使用感にあまり変わりはないと思います。 条件さえ合えば、無駄なく扱い易く書けているとは思いますけれど、如何でしょう。

その他の回答 (4)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 今仮に、御質問文の例でA列に「赤色」と入力されているセルがA2セルであるものとしますと、B2セルに次の数式を入力してから、B2セルをコピーして、B3以下に貼り付けると良いと思います。 =IF($A2="","",IF(OR(ISNUMBER(FIND("赤",$A2)),ISNUMBER(FIND("緑",$A2))),"注意","-"))

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんにちは! A1セル以降にデータがありB列に表示するとします。 すでのNo.1さんが的確な回答をされていらっしゃいますが・・・ 似たような感じで B1セルに =IF(OR(ISNUMBER(FIND({"赤","黄"},A1))),"注意","") これは配列数式になってしまいますので、 Shift+Ctrl+Enterで確定! この画面からコピー&ペーストする場合は 上記数式をドラッグ&コピー → B1セルを選択 → 数式バー内に貼り付け → そのまま(編集可能なまま) Shift+Ctrlキーを押しながらEnterキーで確定! 数式の前後に{ }マークが入り配列数式になります。 これをオートフィルで下へコピーしてみてください。m(_ _)m

  • itu1989
  • ベストアンサー率44% (37/83)
回答No.2

【完全一致】 =IF(OR(A1="赤",A1="緑"),"注意","-") 【一部一致】 =IF(COUNTIF(A1,"*赤*")+COUNTIF(A1,"*緑*")>=1,"注意", "-")

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

B1セルに以下の式を入力して下方向にオートフィルしてください。 =IF(SUMPRODUCT(COUNTIF(A1,{"*赤*","*緑*"})),"注意","")

関連するQ&A

  • エクセルの関数での処理方法

    下記のようなデーターベースがあります  列 A   B   C  D   E    F 行  4/1 4/10 4/20 1   青  100 青 1100 青 11000 2  黄色  200 黄色 1200 黄色 12000 3 緑  300 緑 1300 緑 13000 4  赤  400 赤 1400 赤 14000 5  紫  500 紫 1500 紫 15000 6  黒  600 黒 1600 黒 16000 7  白  700 白 1700 白 17000 8  茶  800 茶 1800 茶 18000 9  水色  900 水色 1900 水色 19000 10 朱色 1000 朱色 2000 朱色 20000 上の図では分かりにくいかも知れませんが、 A列には上から4/1、青、黄・・・ B列には上から空白、100、200・・・  C列には上から4/10、青、黄・・・ D列には上から空白、1000、2000・・・  E列には上から4/20、青、黄・・・ F列には上から空白、10000、20000・・・と並んでます。 4/1の項目は4/9までの値段 4/10の項目は4/19までの値段 4/20の項目は4/30までの値段になります。 4/5、4/10/、4/15、4/25の白の値段を調べるにはどのようにすればいいでしょうか? 4/5、4/10、4/15、4/25のそれぞれに VLOOKUP関数の式を入れて調べるんではなく ひとつの式を入れて調べる日付のセルの値だけが 変わるだけで 全部同じ式で反映されるようにしたいんですが・・・ できますか? VOOLUP関数やIF関数を組み合わせてやってるんですが うまくいきません。 それともマクロでないとできないですか? よろしくお願いします。

  • あなたの好きな色など教えてください

    すこし参考にしたいので・・・アンケートです。もしよければ。 1、2は番号で答えてください。 1.あなたの好きな色は?  (1)赤、橙  (2)黄、レモン色  (3)黄緑、緑  (4)青、水色、藍  (5)紫、青紫  (6)赤紫、桃  (7)茶、ベージュ  (8)白  (9)黒 2.自分の部屋を模様替えすることにしました。絨毯の色は何色にしますか  (1)暖色系(赤、橙、桃、黄)  (2)寒色系(青、水色、藍)  (3)中性色系(緑、黄緑、紫)  (4)無彩色系(黒、白) 3.各色のイメージを書いてください   例)赤:情熱的、愛 など  ≪赤、桃、黄、緑、青、紫、茶、黒、白≫

  • 任意の文字列を検索して文字を追加する。

    マクロについてご質問します。 宜しくお願い致します。 <質問> A列…すべてのデータが入っています。 B列…検索したいデータが入っています。 C列…検索結果のデータを出力します。 過去に教わったIF関数を使用した「=IF(ISNA(MATCHを組み合わせた式)」方法ですとA列の文字とB列の文字が一致しているものは そのままC列に表示で、B列に含まれないA列の文字はC列に"その他"として出力することができました。 今回は、A列の文字とB列の文字が一致している場合は C列に文字を加え、A列B列ともに一致していない場合は そのままの表示を行いたいのですがどなたかご助言していただけると助かります。 A列   B列  C列 ------------------------ 赤   白   赤   白   緑   白組 黄       黄 緑       緑組 青       青 IF関数で行うことは可能なのでしょうか? 宜しくお願い致します。

  • セルの値により文字色か背景色を

    どう検索していいかわからず。お願いします。 0_a_b_c 1_1_2_-1 2_5_2_3 3_8_2_6 単純にc列にa列引くb列の式を書きます。 つまり a1の「1」とb1の「2」を引き算して c1に[a1-b1]=「-1」としたいのですが この-1に成ったときは赤 同様に5以下のプラスであれば青 6以上であれば紫 とかセルに色をつけたいのですが (もしくは文字に色をつける) できるものなのでしょうか?

  • こんな時の関数

    列A 列B 列C 赤 229 12,330 青  21  967 黄  21  967 緑  6  389 緑 524 15,837 赤  48  3,087 緑  67  3,251 黄 257  9,771 青  9  860 青  24  1,324 青 935 34,519 赤計 ? ? 青計 ? ? 黄計 ? ? 緑計 ? ? 各色の計を出したいのですが、どうすると良いでしょうか?

  • 【Excel】 改ページ場所を設定するVBA

    こんにちは A列 B列 品番 色 1000 赤 1000 黄 1001 黄 1001 青 1002 青 1002 赤  ・  ・  ・ このような表があります。 これを、 ----------------- 品番 色 1000 赤 1000 黄 ----------------- 品番 色 1001 黄 1001 青 ----------------- 品番 色 1001 黄 1001 青 ----------------- や、 ----------------- 品番 色 1001 青 1002 青 ----------------- 品番 色 1000 赤 1002 赤 ----------------- 品番 色 1000 黄 1001 黄 ----------------- の様に 品番毎や、色毎に改ページしてプリントする方法を教えて下さい。 VBAで設定できるみたいなのですが、VBAは初心者です。 設定方法を教えて頂けないでしょうか。 Excel2007です。

  • 「緑色」や「紫色」の恒星がないのは何故?

    天気の良い日、夜空を見上げると満天の星が綺麗ですね。 恒星は一見、どれも白く輝いているように見えますが、よく見ると赤味を帯びていたり、 青味が強かったり、黄色っぽかったり。 しかし… 「緑」や「紫」はないようです。 虹の七色は(赤・橙・黄・緑・青・藍・紫)ですよね。 でも、恒星のスペクトル型を見ると、 O(青)、B(青白)、A(白)、F(淡黄)、G(黄)、K(橙)、M(赤) で、やはり緑や紫はありません。 緑色や紫色に光る恒星が存在しない「理由」を教えてください。

  • excel関数について

    エクセルでセルの色をその中の数字よって分けたいですが。。。。 たとえば 8 15 17.3 18 19 15 11 12 14 16.3 10以下は赤 10-12はオレンジ 12-14は黄色 14-16は緑 16-18は青 18-20は白 20以上は紫 7種類の色が付けたいです。   どうすればいいのでしょうか? それとも、不可能でしょうか?

  • エクセルにて複数の文字を検索後に特定変換

    例ですがエクセルのセルA1~A10にそれぞれ1~8の数字が入っている場合1は赤、2は青などに変換したいのですが可能でしょうか?   A 1 3 2 1 3 5 4 8 5 1 6 2 7 4 8 6 9 7 10 1 上記の場合   A 1 黄 2 赤 3 緑 4 紫 5 赤 6 青 7 黒 8 白 9 金 10 赤 と言う風に変換したいのですがどのようにしたらよろしいでしょうか?

  • Excel2002 条件によりセルの文字色を変える

    Excel2002について質問させていただきます。 たとえば2つのシートがあります。・・・  Sheet1         Sheet2 A列  B列      A列   B列   商品 在庫      商品  在庫    A   ●       A    1    B   ●       B    2     C   ●       C    1 Sheet1のB列在庫の文字色を、Sheet2のB列在庫の値により色を変えたいのですが、1は青、2は赤 のように・・。 希望としてはマクロで行いたいのですが、可能でしょうか? よろしくお願いいたします。

専門家に質問してみよう