[[20150625222016]] 『MAX,MINIMUM、AVERAGE関数』(太郎) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『MAX,MINIMUM、AVERAGE関数』(太郎)

ある条件を指定してからその対象データのAVERAGE、MAX、MINIMUM関数の出し方を教えてください。

   A	         B	C
1  2015/4/1	旅費	500
2  2015/4/2	経費	2000
3  2015/4/5	旅費	5000
4  2015/5/1	経費	1500

A:4/1〜4/30 & B:旅費 の場合の Cの数値のAVERAGE
A:4/1〜4/30 & B:旅費 の場合の Cの数値のMAX
A:4/1〜4/30 & B:旅費 の場合の Cの数値のMINIMUM

この3つの式が分かりません。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


 MINIMUM関数というのは、MIN関数のことかな?

 期間指定は、常に月初から月末?
 そうとも限らないのかな?

 B列の条件として指定するのは1つだけ?
 一度に複数指定することはないのかな?

 とりあえず DAVERAGE、DMAX、DMIN あたりを調べてみよう。

 関数で上記以外なら
 複数条件の平均: AVERAGEIFS
 条件付き最大値: 配列数式(最小値も)
 
 条件をどのセルに、どのように指定するのかも書いてもらったほうがいいですね!
 まさか4/1〜4/30だけ出せば、それで用済みなんてことないよね?
(笑) 2015/06/26(金) 01:54

期間指定は常に月初から月末です。
B列の指定は1つです。一度に複数指定はありません。

DMAXとか調べていたんですが、日付の指定が分からず断念。
Sumproductで下記にしてみたんですが、なんかおかしいみたいで。

=SUMPRODUCT(max($a:$a>="2015/4/1")*($a:$a<"2015/5/1")*($b:$b="原本")*$c:$c))

(太郎) 2015/06/26(金) 06:50


 > 期間指定は常に月初から月末です。 
 > B列の指定は1つです。一度に複数指定はありません。
 
	A	B	C	D	E	F	G	H	I	J	K
1	日付	内容	金額		年	月	内容		日付	日付	内容
2	2015/4/1	旅費	500		2015	4	旅費		>=42095	<=42124	旅費
3	2015/4/2	経費	2000								
4	2015/4/5	旅費	5000
5	2015/5/1	経費	1500

 A列からC列の1行目を見出しにする。

 期間指定の年をE2に、月をF2に入力。
 B列の条件をG2に入力。

 I1とJ1に =A1
 K1に   =B1

 I2 =">="&DATE(E2,F2,1)
 J2 ="<="&DATE(E2,F2+1,0)
 K2 =G2

 I1:K2に上記の数式を入力

 最大値 =DMAX(A:C,C1,I1:K2)
 最小値 =DMIN(A:C,C1,I1:K2)
 平均  =DAVERAGE(A:C,C1,I1:K2)

 もちろんI2:K2に直接条件を入力してもいいんだけど、
 比較演算子を付けて日付を入れるのが面倒なのでこのようにしてみました。
 こうしないとダメというわけではありません。あくまで一例です。

 このやり方でI1:K2が目障りなら、視界に入らない遠く離れたところにすればいいでしょう。
(笑) 2015/06/26(金) 08:18

ありがとうございます。

これは計算するデータの入った全ての行に式を入れる感じですか。
すみません。説明不足だったのですが、計算する元のデータは皆で共通で使用しているのでいじれません。
計算式は別シートに入れる予定です。

説明が下手ですね。
(太郎) 2015/06/26(金) 10:21


 別シートにデータをリンク。
 年月日は「年月だけ」引っ張り出して ピボットテーブルつかえばいいんでないの?

 イメージ

	A	B	C	D	E	F	G	H
1	年月日	科目	金額	年月日		年月日	(すべて)	
2	15/4/1	旅費	500	15/4/1		科目	(すべて)	
3	15/4/2	経費	2000	15/4/1				
4	15/4/5	旅費	5000	15/4/1		最大値	最小値	平均
5	15/5/1	経費	1500	15/5/1		5000	500	2250

 A〜C列 リンク
 D列 D2 =A2-DAY(A2)+1 下へコピー。

 B:D列でピボットテーブル。

 G1:G2で絞込み。
(GobGob) 2015/06/26(金) 14:21

 > これは計算するデータの入った全ての行に式を入れる感じですか。 

 式とはどの式のことをいってるのかな?
 というか回答のどこをどう読んだら「全ての行に式を入れる感じ」になるんですかね?

 頭の中で妄想ばかり膨らませていないで、実際に回答通りにやってみてくださいよ。
 まずは同一シートで。  
 
 別シートなら数式の必要なところにシート名を付けるだけ。
 > 最大値 =DMAX(A:C,C1,I1:K2)

 リストがSheet1にあるとすると、

 =DMAX(Sheet1!A:C,Sheet1!C1,I1:K2)
 または
 =DMAX(Sheet1!A:C,3,I1:K2)

 下の式の「3」というのは計算対象がリストの「3列目」だということ。

 元データはいじれませんって、
 まさか1行目を見出しにすることもできないってことじゃないよね?
(笑) 2015/06/26(金) 15:17

 別シートなら
 > I1とJ1に =A1
 > K1に   =B1
 
 これも
 =Sheet1!A1
 =Sheet1!B1
 ですね!
(笑) 2015/06/26(金) 15:44

 フィルタオプションに「計算式による抽出」というのが、ありますね。
 見出しをブランクに(または、実際にない見出しをあえて記入する)というやつです。
http://support.microsoft.com/default.aspx?scid=kb;ja;402757&Product=xl2002INT

 あれと同じことが、Dxxx関数でも使えるのですね。

 こんな感じのやつです。参考になれば幸いです。

 ■シート内容
   A列       B列     C        D    E      F     G    H       I
 1 日付      費目    金額                 費目       平均    2,750
 2 2015/4/1  旅費      500        TRUE    旅費       最大    5,000
 3 2015/4/2  経費    2,000                           最小      500
 4 2015/4/5  旅費    5,000                                           
 5 2015/5/1  経費    1,500                                           

 ■条件範囲(E1:F2)には次の入力をしてください。
 E1 : 意図的にブランクにしています。
 E2 : =MONTH(A2)=4

 ■計算部分には次の入力をしてください。
 I1:  =DAVERAGE($A$1:$C$5,$C$1,$E$1:$F$2) 
 I2:      =DMAX($A$1:$C$5,$C$1,$E$1:$F$2)
 I3:      =DMIN($A$1:$C$5,$C$1,$E$1:$F$2)

 補足:
 (1) D関数は他のシートにあっても問題ありません。
 (2) データに見出しをつけたらダメ、などということを言う人がもしいたら、
     優しく諭してあげてください。
     "そういうことを言っていたら、取り残されるよ。
      Excelを使う資格に疑問符がつきますよ。"

(γ) 2015/06/26(金) 23:10


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.