[[20160307112527]] 『リストから特定の文字を含む場合の抽出』(せにょ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『リストから特定の文字を含む場合の抽出』(せにょ)

A列             B列             C列
サイダー         牛乳を2本買う      牛乳
コーヒー           コーヒー1杯        コーヒー
牛乳            コーヒー牛乳1本     コーヒー牛乳
コーヒー牛乳        

A列にリスト、B列に飲み物の文字列が入ったセル、C列にリストと一致する飲み物を結果として出したいのですが、どのような関数にすれば良いでしょうか?
文字列には必ず1つの飲み物しか入りませんが、コーヒー牛乳のようにコーヒーと牛乳と、2つが繋がった飲み物はあります。

宜しくお願い致しますm( _ _ )m

< 使用 Excel:Excel2013、使用 OS:unknown >


 「コーヒー牛乳」のように複数がつながった名前は「コーヒー」「牛乳」単体よりリストで後になる場合。

 =IFERROR(INDEX(A:A,MATCH(2,INDEX(0/(COUNTIF(B2,"*"&A$1:A$10&"*")*(A$1:A$10<>"")),0),1)),"")

 リストで前になる場合。
 =IFERROR(INDEX(A:A,MATCH(0,INDEX(0/(COUNTIF(B2,"*"&A$1:A$10&"*")*(A$1:A$10<>"")),0),0)),"")

(ねむねむ) 2016/03/07(月) 12:09


 例みたいに「コーヒー牛乳」が後ろになるのが前提。

 =IFERROR(LOOKUP(1,-FIND(A$1:A$4,B1),A$1:A$4),"")
 
(GobGob) 2016/03/07(月) 12:15

 順番を問わない場合。

 =IFERROR(INDEX(A:A,MATCH(MAX(COUNTIF(B1,"*"&A$1:A$10&"*")*LEN(A$1:A$10)),IF(COUNTIF(B1,"*"&A$1:A$10&"*")*LEN(A$1:A$10)>0,LEN(A$1:A$10),""),0)),"")
 ShiftキーとCtrlキーを押しながらEnterキーで式を確定する。
 確定後、式が{}で囲まれればOK。
(ねむねむ) 2016/03/07(月) 12:24

 順不同で別案。

 =IFERROR(INDEX(A$1:A$10,MATCH(TEXT(MIN(INDEX(LEN(SUBSTITUTE(B1,A$1:A$10,)),)),"[="&LEN(B1)&"]A;0")*1,INDEX(LEN(SUBSTITUTE(B1,A$1:A$10,)),),)),"")
 
(GobGob) 2016/03/07(月) 12:59

ねむねむさん、GobGobさん、有難うございました!
無事に結果が出せました。
感謝致します。

(せにょ) 2016/03/07(月) 16:13


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.