• ベストアンサー

EXCELで検索範囲を再設定して値を取得するには?

お世話になります。 下記のようなデータがあるエクセルファイルで、 店Bの商品2の2月単価を取ってくるには、どのような関数を組み合わせればいいのでしょうか? 店番号,店名,商品番号,商品名,1月単価,2月単価,3月単価 10,店A,5000,商品1,100,110,111 10,店A,6000,商品2,200,220,222 20,店B,5000,商品1,100,110,111 20,店B,6000,商品2,200,220,222 30,店C,5000,商品1,100,110,111 30,店C,6000,商品2,200,220,222

質問者が選んだベストアンサー

  • ベストアンサー
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

#01です >店Bの開始行位置を見つけて、次に終了行位置を見つけて、商品2を検索したいのですが はい大丈夫です。ダミー行も必要ありませんよ。 例えばH1に店番号、H2に商品コードを入力してH3に =SUMPRODUCT((A2:A100=H1)*(C2:C100=H2)*F2:F100) と入力すればH1,H2を変えると、それに対応する単価を表示します。 (ただし店名と商品名の組み合わせが複数存在する場合はNG)

betti2osaka
質問者

お礼

理解しました。 うまく行きました。こんな方法があるなんて! びっくり。 ありがとうございました。

その他の回答 (1)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.1

「2月」を決め打ちで良いなら =SUMPRODUCT((A2:A7=10)*(C2:C7=6000)*F2:F7) =SUMPRODUCT((B2:B7="店A")*(D2:D7="商品2")*F2:F7) で求められます。 でも店名と商品名の組み合わせが複数存在する場合は正しい結果が得られません。その場合はもっと複雑な式になりますので、必要であれば補足してください

betti2osaka
質問者

お礼

店Bの対象行数を固定にするよう、データにダミーデータを入れることにしました。これだとなんとか関数でできるでしょうか?

betti2osaka
質問者

補足

レスありがとうございます。 補足します。 店Bの開始行位置および終了行位置は毎回固定ではありません。 また、店Bの対象行数が複数行ありますが、毎回固定位置(上から2番目とか)に出現する保証もありません。 つまり店Bの開始行位置を見つけて、次に終了行位置を見つけて、商品2を検索したいのですが、関数だけでできるでしょうか?

関連するQ&A