- ベストアンサー
エクセルのデータ抽出について
塗装 厚み 色 重量 1 c 0.4 200 30 2 c 0.5 200 100 3 f 0.4 500 10 上記の様な表があるのですが1行目の項目を基準にして 下の表に重量(****部分)を表示させたいのです。VLOOKUP関数だと検索値が1つしかはいりませんよね。上記の表のような3つの項目(塗装、厚み、色)が一致したデータを検索する時はどんな関数を使ったらよいのでしょうか? もしくは関数を使わないのならどんな方法が一番いいでしょうか? よろしくお願いいたします。 塗装 厚み 色 重量 1 c 0.4 200 **** 2 f 0.4 500 ****
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
上表で塗装、厚み、色がおのおのA列、B列、C列とすると 元表の色と重量の間に1列挿入し、 =A & B1 & C1 という計算式を全行にセットします(数字部分は対応する行)。 次に、下表の重量列に =vlookup(A1&B1&C1,sheet1!C:D,2,false) という計算式をセットすればOKです。 なお、上表はSheet1、下表は別シートにあるものとしています。
その他の回答 (5)
- ja7awu
- ベストアンサー率62% (292/464)
> 3つの項目全てが同じものはないのですが、内2つが同じものは存在します。なので、sumprodut関数は使えません。 やってみたのですか? それなら使えるはずですが・・・ > sumprodut関数は使えません。 式を理解して頂いていないようですね。 関数自体の解説は、ヘルプを見てください。
お礼
仰るとおりに入力してみたのですが、上手くいきませんでした。 たぶん、私が上手くの関数を理解していないのが原因だと思います。 勉強します。有難うございました。
- ja7awu
- ベストアンサー率62% (292/464)
No.3 ですが、ちょっと訂正です。 > 元になる表で、塗装,厚み,色,重量 の4つの値が、全て同じデータは、 > 他に無いものとします。 ↓ この部分は、元になる表で、塗装, 厚み, 色 の3つの値が、全て同じ データが他に無いものとします。 の間違いです。 (※ 3条件に合致するデータが複数(行)検索されると、その重量は加算されます。)
- ja7awu
- ベストアンサー率62% (292/464)
元になる表で、塗装, 厚み, 色, 重量 の4つの値が、全て同じデータは、 他に無いものとします。 例えば、見出しを入れない元データの範囲が、 A2:D4 の場合は、 8行目に記入したデータに対して、重量を元データから検索して求める計算式は、 =SUMPRODUCT((A$2:A$4=A8)*(B$2:B$4=B8)*(C$2:C$4=C8),D$2:D$4) 必要分、下へフィルドラッグ。 これで如何でしょうか。
補足
こんな使い方もあったんですね。ありがとうございます。 でも、実は元になる表で塗装、厚み、色には重複するデータが存在するのです。3つの項目全てが同じものはないのですが、内2つが同じものは存在します。なので、sumprodut関数は使えません。 あつかましいのですが、他の方法はあるのでしょうか…
- yuknya
- ベストアンサー率32% (112/345)
#1です。表現が適切でないようです。 >塗装にフィルターをかけたあと、厚みのフィルターをかける >と、ご希望のデータが抽出できます。 塗装、厚み、色、それぞれフィルターを順番にかけていけば ご希望のデーターが抽出できます。
補足
すみません。質問の仕方がよくなかったようです。下記の表はすでに別セルに作成されているので****部分に関数を入れて重量のデータを表示させたいのです。 フィルタだと、元表を抽出してしまうことになりますよね。
- yuknya
- ベストアンサー率32% (112/345)
オートフィルターを使いましょう。 データ → フィルター → オートフィルター ▼をクリック オプションに 抽出させたいデータをを入力 → OK 組み合わせによりいろんな抽出が出来ます。 塗装にフィルターをかけたあと、厚みのフィルターをかける と、ご希望のデータが抽出できます。
お礼
上手くいきました。ありがとうございます。 感謝します!!