• 締切済み

Excel2003 一つのセルの文字情報から複数のあいまい検索結果に印を付ける

1)A列のセルに3文字のキーとなる半角英数字が複数個 半角スペースで区切って複数行入力されている。 2)1)のデータから 検索したい複数個の文字を検索し、一つでも該当すれば B列に”●”、なければ”-”を表示したい。   <例> A列 検索キー文字: R20 又は R21 又は RN5 A列               B列(結果) C29 PNS RG0 S5K W4B       -   7X9 R20 S5K W4B         ● S5K W4B WFT           -  C05 PJD PM4 PXR R21       ● RN5 PH1 RG0           ● 宜しくお願い致します。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.7

例データ A1:A7 データ C29 PNS RG0 S5K W4B 7X9 R20 S5K W4B S5K W4B WFT    -  C05 PJD PM4 PXR R21 RN5 PH1 RG0 RN5 PH1 R23 ーー 条件 F1:F4 データ *R20* *R21* *R23* ーーー データーフィルターフィルタオプションの設定 指定した範囲  ON リスト範囲 A1:A7 検索条件範囲 F1:F4 抽出範囲 C1:C11 OK C列に 含まれる行のデータが出る。 データ 7X9 R20 S5K W4B C05 PJD PM4 PXR R21 RN5 PH1 R23 B2に =IF(ISERROR(MATCH(A2,$C$2:$C$100,0)),"","●") B7まで式複写。 結果 A,B列 データ C29 PNS RG0 S5K W4B 7X9 R20 S5K W4B ● S5K W4B WFT    -  C05 PJD PM4 PXR R21 ● RN5 PH1 RG0 RN5 PH1 R23 ● ================== 式が長くなってもよいなら D2に =IF(COUNTIF(A2,"*R20*")+COUNTIF(A2,"*R21*")+COUNTIF(A2,"*R23*")>0,"●","") 下方向に式を複写。 A列     結果D列 データ C29 PNS RG0 S5K W4B 7X9 R20 S5K W4B ● S5K W4B WFT    -  C05 PJD PM4 PXR R21 ● RN5 PH1 RG0 RN5 PH1 R23 ●

shawood99
質問者

お礼

ご回答、ありがとうございました。 回答を記述するだけでも大変だと思われる、丁寧なアドバイス! 本当に感謝感謝です。 検索結果を数値として出し、それを条件にて 文字として表す! 単純な文字検索じゃないのですね^^ 今回の質問の内容は、よく遭遇しそうな問題、 AまたはBまたはCまたは・・・ とか。 Excel標準装備で 選択肢をもっと 増やしてくれれば 初心者にはありがたいのかもしれないですね~。 分類コマンドも3つまでじゃなく 5つ以上とかあるともっと便利なのにと、思うのは私だけでしょうか?? 今回初めて質問をしましたが、これだけ即答していただけるとは思っても見ませんでした。 皆さんの回答へのご親切さ、そして 何より、皆さんのスキルの高さに驚いています。 imogasi様、そして ご回答頂いた皆様、改めて御礼申し上げます。

全文を見る
すると、全ての回答が全文表示されます。
noname#204879
noname#204879
回答No.6

      A      B  C  D   E   F 1 C29 PNS RG0 S5K W4B -   A列検索キー文字 2 7X9 R20 S5K W4B   ●   R20  R21  RN5 3 S5K W4B WFT     - 4 C05 PJD PM4 PXR R21 ● 5 RN5 PH1 RG0     ● B1: =IF(LEN(A1)*3-(LEN(SUBSTITUTE($A1,D$2,""))+LEN(SUBSTITUTE($A1,E$2,""))+LEN(SUBSTITUTE($A1,F$2,""))),"●","-")

shawood99
質問者

お礼

ご回答、ありがとうございます。 普段使ったことのない関数で 意味すら わかりません^^。 Excelって本当に奥深く、マスターすると広範囲なことができるんですね!! マニュアル見てもわからない部分あったりして・・ たとえば あいまい検索は countif だけワイルドマーカーが使えるとか・・ >>これも正解なのかどうか私自身 わかりません。 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.5

こんな式でも =IF(MIN(FIND({R20,R21,RN5},A1&"R20R21RN5"))<=LEN(A1),"●","-")

shawood99
質問者

お礼

ご回答、ありがとうございます。 いろりろ方法があるのですね~~! 皆さんのスキルに本当に関心するばかりです。 皆さんのご回答が無かった前までは、オートフィルでの詳細にて 何度も、検索キーを与えて、抽出されたデータに●やら”-”を 手作業にてしていました。 非常にわずらわしく思っていましたが、皆さんのご回答を参考に したいと思います。 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.4

No2は検索する文字列が変わっても即座に対応できます。

全文を見る
すると、全ての回答が全文表示されます。
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんにちは! COUNTIF関数を使えば出来ると思い、 投稿しようと画面を切り替えると すでにNo.1さんが回答されていましたので、 他の方法の一例です。 A1セルからデータが入っているとして B1セルを  =IF(OR(LEN(A1)>LEN(SUBSTITUTE(A1,"R20","")),LEN(A1)>LEN(SUBSTITUTE(A1,"R21","")),LEN(A1)>LEN(SUBSTITUTE(A1,"RN5",""))),"●","-") としてオートフィルで下へコピーします。 しかし、No.1さんの回答の方がスマートですね! この程度の回答しかできませんが ごめんなさいね。m(__)m

shawood99
質問者

お礼

ご回答、ありがとうございました。 この程度の回答しか・・・ なんて謙遜なさらないで! 私はそこまでもたどり着きませんでしたから~^^ 以前にも別なことで悩んだあげく、投げ出したことがありますが、 皆さんからの適切かつ丁寧なご回答、嬉しく思いました。 また、迷路に迷い込んだら、お願いします。 ありがとうございました。

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

例えばA2セルから下方にお示しのデータがあり、B1セルにR20,C1セルにR21、D1セルにRN5というように検索する文字列があるとします。 B2セルには次の式を入力し下方にオートフィルドラッグします。 =IF(A2="","",IF((IF(ISNUMBER(FIND(B$1,A2)),1,0)+IF(ISNUMBER(FIND(C$1,A2)),1,0)+IF(ISNUMBER(FIND(D$1,A2)),1,0))>0,"●","-"))

shawood99
質問者

お礼

ご回答、ありがとうございました。 あれこれ悩んでいるうちに半日以上費やし、結局、何が何だかわからなくなってしまいました。 皆さんの回答、大変感謝するとともに、皆さんのスキル 素晴らしいですね!! この方法だと、検索条件が変更になった場合、簡単に検索することができますね?! ひとつの結果を出すのに、皆さんからのご回答、いろいろ方法があるのですね? 発想の転換?!っていうやつですかね??!! でも、その前に関数の意味を熟知していないと、ダメですね^^ また、迷路に迷い込んだら、お願いします。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • turuzou
  • ベストアンサー率33% (15/45)
回答No.1

こんなのでも? =IF(OR(COUNTIF(A1,"*R20*"),COUNTIF(A1,"*R21*"),COUNTIF(A1,"*RN5*")),"●","-")

shawood99
質問者

お礼

ご回答、ありがとうございました。 この方法、してみたと思うのですが、どこかの式ミスにより、満足する結果が得られませんでした。 大変助かりました。 あれこれ悩んでいるうちに半日以上費やし、結局、何が何だかわからなくなってしまいました。 皆さんの回答、大変感謝するとともに、皆さんのスキル 素晴らしいですね!! また、迷路に迷い込んだら、お願いします。 ありがとうございました。

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

関連するQ&A

  • Excel2003 一つのセルの文字情報からキーとなる文字が含まれていたら 規定の文字を表示させる

    1)A列のセルに3文字のキーとなる半角英数字が複数個 半角スペースで区切って複数行入力されている。 2)1)のデータから 検索したいキー文字を検索し、該当すれば B列に 規定の文字列 、無ければ"-”を表示したい。   <例> A列 検索キー文字: R20なら"a"  RG0なら"b" WFTなら"c" の繰り返し A列               B列(結果) C29 PNS RG0 S5K W4B       b   7X9 R20 S5K W4B         a S5K W4B WFT           c  C05 PJD PM4 PXR R21       - RN5 PH1 RG0           b 宜しくお願い致します。

  • 複数セルから文字列を検索して・・・

    どう検索していいのかわからなかったので質問します。 複数のセルから特定の文字列を検索して、該当したセルに対応するB列の数字の合計を関数によって出したいです。 例えば画像を例にすると、A列で"()"という文字列が入っているセルがいくつかあります。 これらのセルに対応するB列の数字の合計を出したいです。 "()"は必ず文字列の末尾にくることとします。 回答よろしくお願いします。

  • 【Excel】 複数の検索文字列を置き換えたい。

    こんにちは 参照文字列から検索文字列を置き換えたいのですが 検索文字列が複数ある場合はどのような式になりますか。 SUBSTITUTEの検索文字列は1つだけだと思うのです。 SUBSTITUTEで置き換えたセルを参照し、またSUBSTITUTEで 置き換えるというふうに繰り返すしかないでしょうか。

  • 複数の文字を検索してくれるソフト

    ワードやエクセルで検索するとき、文字を検索したいと思っているのですが、 A B C Dという、4つの文字を検索したい場合、1つずつ検索をかけなければならないのですが、一度に複数の文字列を検索してくれるソフトはありますでしょうか? 文書は、ワード、エクセル、テキスト、HTMLとさまざまですが、文字だけ探してくれれればいいので・・・。 そういうソフトはありますでしょうか?

  • エクセル VBA セル内の文字検索について

    XP microsoft visual basic 6.0 です A1からA10に書かれた文章(平仮名、カタカナ、漢字、数字、記号、含む)の中に 0から始まる半角8桁の数字があれば 取り出し B列に書き出す VBAを用いてこのようなことは可能でしょうか ※8桁の数字は文章内の何文字目にあるか決まっていない ※文章内に0から始まる8桁の数字が複数あることはない、が、0から始まり記号を含む8桁の文字列はある ご教授ください

  • 正規表現で特定文字に挟まれた範囲内での検索

    VS CODE にて文字列の正規表現で文字列(プログラムではありません)の検索をしたく質問いたします。 (A B C)<A B C> という文字列があり、この中の半角スペースを別の文字に置換したいのですが、全ての空白ではなく( )に挟まれた中の半角スペースだけを検索したいと思っています。 ↑の用な文字列から( )内の半角スペースだけを照らし出す正規表現を教えていただいていただけると嬉しいです。

  • エクセル セル内にリスト化された特定文字列の検索

    セルが下記の文字列を含みます、その際に各セルに検索候補キーが含まれるかどうかを チェックしたいのが目的となります。 ググったりINDEXとかいろいろ使ってみたのですがうまくいかずお助けください。 任意の文字列がはいったセル A1: 明日天気になれ A2: 晴れです、明後日は A3: 吹雪、嵐です A4: 中央高速 A5: 首都高速 検索したいキーワード D1:明日 D2:嵐 D3:首都 得たい結果 任意の文字列を含むセルが複数(A:A)あり、そのセル内にリスト化(D1:D3)されたいくつかの キーワードが含まれるか検索し、ヒットした場合、そのキーワードを表示するというものです。 期待される出力結果 A1: 明日天気になれ          B1:明日 A2: 晴れです、明後日は        B2: A3: 吹雪、嵐です            B3:嵐    A4: 中央高速              B4:    A5: 首都高速              B5:首都   尚、Aには検索したい複数のキーワードは同時に含まれていないという前提での処理で かまいません。(今後精査する可能性はでてきそうですが、、) よろしくお願いいたします。

  • Excelの関数での複数検索方法について

    VLOOKUPでは複数検索できなく困っております。 台帳から複数条件のみを摘出して条件に合致したものを「◯」を表示させたい。 台帳に入力されている文字 B列:メール、TEL、FAX E列:クローズ、対応中 H列:Aさん、Bさん、Cさん、Dさん、お客様対応 検索条件 各行に入力されている【メール、クローズ、「Aさん、Bさん、Cさん」】のみを摘出してK列に「◯」を表示させる。 よろしくお願いします。

  • Excel2000:検索値が複数のLOOKUPは

    <元一覧> 部門 ID 内容 カテゴリ 経理  1  あ   A 経理  2  い   B 総務  3  う    C 営業  4  え   B 営業  5  お   A 営業  6  か   C 営業  7  き   D 現在、上記のようなシート「元一覧」が300行あります。 これを下のようなシート「新一覧」を作成したいんです。 別シートの<新一覧> 部門 ID A B C D 経理  1 あ 経理  2   い 総務  3     う 営業  4   え 営業  5 お 営業  6     か 営業  7      き LOOKUPを考えましたが、検索値が「ID」と「カテゴリ」と複数になりますので、今は少し考えて、元一覧に「ID」と「カテゴリ」を「&」で合わせた「Key」という列を足しました。 部門 ID 内容 カテゴリ Key 経理  1  あ   A   1A 経理  2  い   B   2B 総務  3  う    C   3C 営業  4  え   B   4B 営業  5  お   A   5A 営業  6  か   C   6C 営業  7  き   D   7D 別シートに新一覧を作るので、そこにも「Key」を、A~Dのカテゴリ4つ分作り、それを検索値に、元一覧の「Key」列を検索範囲にして、元一覧の「内容」の対応範囲を別シートの新一覧に表示してます。 =LOOKUP("新一覧!2B","元一覧!「Key」の範囲","元一覧!「内容」の範囲")=い でも、何故かきちんと反映してくれません。 例えば、「ID」「1」の「内容」は「A」に「あ」です。 それは入りました。 でも「B」にも「あ」が入ってしまいます。 *「ID」を3桁の「001」にしたり、「Key」もソートしてますがダメです。 それに当たり前ですが、当てはまらない部分は全て「#N/A」となり、新一覧の見た目とてもウザいです(^^;) こんな具合で下手な説明ですが、どなたか、上手い具合になれるようご指導よろしくお願いします。

  • 【エクセル】結合した文字列の検索について

    エクセルで、複数セルの文字列を「=A1&A2&A3&…」という感じで、B1セルに結合するとして、 例えばA2の文字列に「★」という文字が含まれているとします。 検索で「★」を指定した場合、A2のものは引っかかるのですが、B1の結合された文字列は引っかかりません。 B1セルの文字列も通常通り検索できるようにするには、B1セルでどのような処理をすれば良いのでしょうか。

前髪キープのコツとは?
このQ&Aのポイント
  • 前髪をアイロンで巻いた時にカールを長持ちさせる方法を紹介します。
  • スプレーの使用方法や適量のコツ、割れてしまう原因なども解説します。
  • 上手で自然な前髪カールをキープするためのアドバイスをお伝えします。
回答を見る

専門家に質問してみよう