- 締切済み
関数
Excelで関数を使用して以下のようなデータから A列からB・Cの複数のデータ抽出をすることは可能でしょうか? (VLOOKUPですと助かります) <sheet> A列 B列 C列 1 A 1 2 A 2 3 B 3 4 B 4 5 C 5 6 C 6 複数の関数を組み合わせでもかまいませんので、お手数おかけしますが よい方法が有ればご教示お願いします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- KURUMITO
- ベストアンサー率42% (1835/4283)
回答No2です。先の式ではA,B,Cなどのデータが一塊となっていることが必要です。そうではなく、バラバラにB列のデータがあり、しかもVLOOKUP関数にこだわりがあるのでしたら回答2の表でB列とC列の間に列を新たに挿入します。従来のC列のデータはD列になります。 そこで新たな列であるC列のC2セルには次の式を入力して下方にドラッグコピーします。 =IF(B2="","",B2&COUNTIF(B$2:B2,B2)) F1セルに検索文字の例えばB、G1セルには検索文字のC を入力します。 F2セルには次の式を入力して右横方向にドラッグコピーしたのちに下方にもドラッグコピーします。 =IF(ROW(B1)<=COUNTIF($B:$B,F$1),VLOOKUP(F$1&ROW(A1),$C:$D,2,FALSE),"") なお目障りでしたら、C列の作業列はC列を選択してから右クリックして「非表示」を選択すればよいでしょう。
- tom04
- ベストアンサー率49% (2537/5117)
- KURUMITO
- ベストアンサー率42% (1835/4283)
お示しの表がA,B,C列の2行目から下方に入力されているとします。 出来ればVLOOKUP関数でとのことですがVLOOKUP関数では複数の同じ文字がある場合には対応ができません。この際INDEX関数を覚えてください。 例えばB列の文字に対応したC列のデータを取り出すことにします。 取り出したいB列の文字を例えばE1セルにBと入力し、F1セルにはCと入力します。 そこでそれらの文字に対応するC列の数値をEおよびF列に表示させるとしたらE2セルには次の式を入力してF2セルまで横にドラッグコピーしたのちに下方にもドラッグコピーします。 =IF(ROW(B1)<=COUNTIF($B:$B,E$1),INDEX($C:$C,MATCH(E$1,$B:$B,0)+ROW(B1)-1),"")
「A列からB・Cの複数のデータ抽出を」した結果例(貴方が期待する形)を示してください。