• 締切済み

エクセル関数 複数条件検索について

エクセル関数について質問です。 検索値を増やす場合の関数について教えてください。 セルA6に、セルA3とA4に入力した値と合致する値をSheet2から抽出し、抽出した値とA5の値を掛けるという以下の数式が入っています。 =IF(2-COUNTA(A3,A4),"",VLOOKUP(A3,Sheet2!A:AH,MATCH(A4,Sheet2!A$1:AH$1,1),0)*A5) Sheet2のリストに項目が増えた為、この数式をセルA2(新しく増えた検索値)とA3とA4に入力した値と合致する値をSheet2から抽出し、抽出した値とA5の値を掛けるという数式をA6入れたいのですが、この場合、どのように数式を直せばいいのでしょうか。 エクセルのバージョンは2007です。 ご教示下さい。よろしくお願いします。

みんなの回答

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

まるで説明がありませんが、とりあえず今までのシート2は、縦にA3、横にA4を探して交わった値を持ってくればよい作りにしてあった、という所までは(当然あなたは実物を目で見ているのですから)理解はしていますね。 で、今度はA3vsA4の縦横表に、さらにA2を加えて何かを探さなきゃならないわけですが、「シート2のリストに項目が増えた」って、具体的にシート2をどーいう具合に作り変えたんですか。 「リストに項目が増えた」という言葉尻から想像できるのは、たとえばA3が縦項目なのは変わらずで、横項目が      B列 C列 D列 E列 F列 G列 A4相当:あれ あれ あれ これ これ これ A2相当:1番 2番 3番 1番 2番 3番 3行目以下 実際に取ってきたいデータの羅列 とかいった具合に作成しているといった状況ですが。それなら話は簡単で =IF(COUNTA(A2:A4)=3,VLOOKUP(A3,Sheet2!A:AH,MATCH(A4,Sheet2!A1:AH1,0) + MATCH(A2,Sheet2!B2:D2,0) - 1, FALSE)*A5,"") といった調子で位置取りしてけばいいだけです。 色々「ご自分のエクセルの姿」を具体的に説明するのが出来ないご様子ですから、これを参考に、まずはあなたの実際のシート2の姿に応じて自力で頑張って工夫してみて下さい。

  • angkor_h
  • ベストアンサー率35% (551/1557)
回答No.1

いくつかの条件に合致する値が一つであれば、 excel2007の場合は、sumifs 同等の関数は、SUMPRODUCT …全てのexcelバージョンで使える これは複数条件に合致する対象の合計を求めていますが、対象が一つであれば合算しても答えが同じなので利用できます。 条件数に限りがありません。 利用例として、たとえば A列に日付け、 B列に時刻、 C列に気象データ、 があった場合に、 縦に日付け、 横に時刻 と言う表に、 その交点に気象データを埋め込む、 等に利用できます。 この場合、日付や時刻は整数に整理しておかないと、見た目は同じでも違う値とされて整理できない場合があるので注意が必要です(本題とはそれますが…)。 ご希望に沿うものかは解かりませんが、ご参考まで。

05monsters05
質問者

お礼

早速のご回答ありがとうございます。 教えていただいた関数では、希望している結果が出せませんでしたが、勉強になりました。 ありがとうございました。