- ベストアンサー
Excelで2行あきのデータの最小値を抽出する方法
- エクセル2007を使って、2行あきのデータの最小金額と、その最小値の品物を表示させたい方法を教えてください。
- 品物購入シートと最小値抽出シートの2つのシートがあり、品物購入シートの2行おきの最小値を最小値抽出シートに表示したいと思っています。
- INDEXやMATCH関数を使ってみましたが、エラーが出てしまいました。詳しい方に教えていただけると幸いです。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
「2行おき」のように不確定な計算ではなく,しっかり品目名をキーにして集計してみます。 手順: 抽出シートのB2,B3,B4にそれぞれ「合板」「ペンキ」「ねじ」を記入します。 A2には =MIN(IF(購入!B:B=B2,購入!A:A)) と記入し,コントロールキーとシフトキーを押しながらEnterします C2には =MIN(IF((購入!A:A=A2)*(購入!B:B=B2),購入!C:C)) と記入し,コントロールキーとシフトキーを押しながらEnterします 日付の書式を施し,下向けにコピーします
その他の回答 (4)
- imogasi
- ベストアンサー率27% (4737/17069)
配列数式で許される件数なら 例データ A2:E13 だたし、C,D,E列は参考のためにB列と同じ数字を列をずらして書いているだけ。 元データはA,B列 a 12 12 b 21 - 21 c 14 - - 14 a 12 12 b 9 - 9 c 24 - - 24 a 7 7 b 15 - 15 c 13 - - 13 a 32 32 b 14 - 14 c 23 - - 23 ーーーー 最大値と最小値を出してみると S+C+EはShifttpCTRLとEnterキーを同時押しすること F3の式 =MAX(IF(MOD(ROW($A$2:$A$14),3)=0,$B$2:$B$13,0)) と入れて S+C+E G3は =MIN(IF(MOD(ROW($A$2:$A$14),3)=0,$B$2:$B$13,"")) と入れて S+C+E F4は =MAX(IF(MOD(ROW($A$2:$A$13),3)=1,$B$2:$B$13,0)) と入れて S+C+E G4は =MIN(IF(MOD(ROW($A$2:$A$13),3)=1,$B$2:$B$13,"")) と入れて S+C+E F5は =MAX(IF(MOD(ROW($A$2:$A$13),3)=2,$B$2:$B$13,0)) と入れて S+C+E G5は =MIN(IF(MOD(ROW($A$2:$A$13),3)=2,$B$2:$B$13,"")) と入れて S+C+E ーー 結果 F3:G5 21 9 24 13 32 7 上記データ例のC,D,E列のデータで確認できる。
お礼
配列関数詳しくキーボードの打ち方も書いてくださり ありがとうございます。 質問以外の応用できる 最大値の出し方も書いてくださてありがとうございました。 配列関数はかなり多いデータでもできるのですね。 回答ありがとうございました。
- mu2011
- ベストアンサー率38% (1910/4994)
関数を使用しない方法は如何でしょうか。 (1)最小値抽出シートにデータコピー (2)金額列で並び替え(昇順) (3)金額列で重複削除 因みにマクロ記録させておくと操作が簡単です。
お礼
回答ありがとうございます。 関数やピボットテーブル以外にも 方法があるのですね 勉強しなります。 ありがとうございました。
- KURUMITO
- ベストアンサー率42% (1835/4283)
最小値抽出シートのA列には品物名を入力することにしてA2セルには合板、A3セルにはペンキ、A4セルにはネジのように入力します。 B列には金額を表示させることにしてB2セルには次の式を入力し式を確定する段階でCtrlキーとShiftキーを押しながらEnterキーを押します。その後に式を下方にオートフィルドラッグします。 =IF(A2="","",MIN(IF(品物購入!B$1:B$50=A2,品物購入!A$1:A$50))) C列には購入日を表示させることにしてC2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(A2="","",INDEX(品物購入!C$1:C$50,SUMPRODUCT((品物購入!B$1:B$50=A2)*(品物購入!A$1:A$50=B2)*ROW(A$1:A$50)))) なお、C列の表示形式は日付にします。
お礼
丁寧に回答いただいてすごくわかりやすかったです。 ありがとうございます。 試してみたらうまくいきました。 回答ありがとうございました。
- muunoy
- ベストアンサー率38% (70/183)
関数ではなく、ピボットテーブルを使ってみてはどうですか? 結果をどのように使用しているかわからないので、参考にならなかったらごめんなさい。 全データあわせて、何行あるのかわからないので、最良の方法とは言えないかもしれません。
お礼
ピボットテーブル知らなかったので検索してみました、 初めて機能をしりました。 エクセル=関数みたいに思っていたので 勉強になりました。 たくさんデータ、抽出項目がある時 また勉強して使ってみたいです。 回答ありがとうございました。
お礼
早い回答ありがとうございました。 試してみたらうまくできました。 すごく助かりました。 ありがとうございました。