[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『リストから特定の文字を含む場合の抽出』(せにょ)
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
(せにょ) 2016/03/07(月) 16:13
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.