- 締切済み
EXCEL表の文字列が対象セル内に含まれるか
シートAのB2の文字列が000-みかん_東京_001とあるとして、 シートBのB2:りんご、B3:みかん、B4:いちご C2:横浜、C3:東京、C4:名古屋 D2:赤、D3:青、D4:白 という表があるとします。 シートAのB2セルにシートBのB列とC列から両方含まれる行を探し、D列の値を取得したいのですがどのような関数を利用するのが望ましいでしょう? ちなみに、シートAのB2が調査文字でC2を答えとして、調査対象の行を追加していきたいと思ってます。 お知恵をおかしいただければ幸いです(^^)
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- msMike
- ベストアンサー率20% (368/1813)
SheetA!C2: =IFERROR(INDEX(SheetB!D$1:D$9,MAX((SheetB!B$2:B$9=MID(B2,FIND("-",B2)+1,FIND("_",B2)-FIND("-",B2)-1))*(SheetB!C$2:C$9=MID(B2,FIND("_",B2)+1,FIND("_",B2,FIND("_",B2)+1)-FIND("_",B2)-1))*ROW(A$2:A$9))),"") 【お断り】上式は配列数式として入力してください。
- imogasi
- ベストアンサー率27% (4737/17070)
やりたいことの仕組みがよくわからない。 シートBのB2:D4は B列 C列 D列 りんご 横浜 赤 みかん 東京 青 いちご 名古屋 白 とデータがある。これは動かない、データだよね。 これを使って両方含まれる行を探すのだよね。それはどういう風にするの。 >シートAのB2セルにシートBのB列とC列から両方含まれる行を探し、D列の値を取得したいのです、とはどうするの。 シートAのB2には、「000-みかん_東京_001とある」(固定)のではないのか。 このシートAのB2には、時間的に順次別のデータを入れ替わり、入力されるということか。 >B2が調査文字でC2を答えとして、調査対象の行を追加していきたいと 言うのもよくわからない。 ^^ 1例でシートAのB2セルがこうでシートBのB-C列のデータがこうだから、該当し、だから、こういう風にデータを取るという風に、文章で説明してもらえませんか。 >シートAのB2が調査文字でC2を答えとして、調査対象の行を追加していきたいと ということはシートAのB2その次にB3その次にB4のデータを対象にして、調べて 質問者の望む(赤青白など?)結果をB2に対してはC2に、B3に対してはC3に答えを出したいということか。これはC2の関数式がわかれば、式の複写でC3,C4,C5にも結果が出ると思う。 シートBのデータをどう「両方含まれる」と調べるのか。 質問の例ではみかんと東京があるのは第3行らしいのでD3の「青」を持ってくるというのか? シートAのB2には、000-みかん_東京_001のように余分な語句(000や001)がのあるのをどうせよというの。 アンダーバーを頼りに「区切り位置」機能でも使ってぶんりする? 区切った結果、「みかん」に当たるものは、第2番目に、「東京」は必ず第3番目にあるのか。? ーー 原データ3例と、関数で出せればその結果はどうなるのか追加して、書いてもらえないか。
- kkkkkm
- ベストアンサー率66% (1742/2617)
シートBのD列の前に一列挿入して =B2&C2 とし、下に必要なだけコピーします。D列が目障りでしたら非表示にします。 元のD列はE列になります。 その後 シートAのC2に =VLOOKUP(MID(B2,FIND("-",B2,1)+1,FIND("_",B2,FIND("-",B2,1)+1)-FIND("-",B2,1)-1)&MID(B2,FIND("_",B2,FIND("-",B2,1)+1)+1,FIND("_",B2,FIND("_",B2,FIND("-",B2,1)+1)+1)-1-FIND("_",B2,FIND("-",B2,1)+1)),シートB!$D$2:$E$4,2,FALSE) とするのでいかがでしょう。