[[20171007172606]] 『配列式』(おはな) ページの最後に飛ぶ

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

 

『配列式』(おはな)

 お世話になります。

   A       B       C    D

 1 2017/10/2    100       1     300   
 2 2017/10/2    200       1        
 3 2017/10/2    100       2     100
 4 2017/10/2     50       3     400
 5 2017/10/2    100       3        
 6 2017/10/2    150       3        
 7 2017/10/2    100       3        
 8 2017/10/3    200       1     200
 9 2017/10/3    100       2     300
10 2017/10/3    150       2        
11 2017/10/3     50       2        

A列の日付、C列の同一値を、B列値の合計をD列へ上記の様表示させたいのですが、
=SUMPRODUCT(($C$1:$C$11=C1)*1,($B$1:$B$1))だけでは、
重複してしまい、これにどの様に式を追加すればよいか
ご教示いただけませんでしょうか。
すいませんOSはウィンドウズです。
宜しくお願いします。

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


D1:=SUMIFS(B:B,A:A,A1,C:C,C1)
D2:=IF(OR(A2<>A1,C2<>C1)*(A2<>""),SUMIFS(B:B,A:A,A2,C:C,C2),"")

(マナ) 2017/10/07(土) 19:49


 D1:=IF(COUNTIFS(A$1:A1,A1,C$1:C1,C1)>1,"",SUMIFS(B:B,A:A,A1,C:C,C1))
 下にコピー
(bi) 2017/10/07(土) 21:16

COUNTIFSが思いつけませんでした。
SUMIFSを使っていながら…情けない。

(マナ) 2017/10/07(土) 21:47


 >SUMIFSを使っていながら…情けない。

 そう考えるもんですか?

 5つのセルしか見に行かないで済んでいますけど。
  ↓
 OR(A2<>A1,C2<>C1)*(A2<>"")

(半平太) 2017/10/07(土) 22:22


マクロでも数式でもそうですが
結果がちゃんとでるならそれでよいという考えなのです。
ただ今回、COUNTIFでやろうとして、悩んだのは事実なので、
なんで、COUNTIFSを、そこで思いつけなかったんだろうという意味です。

回答としての優劣はわたしにはわかりませんし、気にしていません。

(マナ) 2017/10/07(土) 22:34


 そう言う意味でしたか、私のレスは忘れてください。

(半平太) 2017/10/07(土) 22:53


 皆様

 ありがとうございました。
集計できました。
感謝致します。

(おはな) 2017/10/08(日) 10:03


 お世話になります。
もう一点ご教示をお願いします。
   A      B    C    D   E   F

 1 2017/10/2    100       1     300   AAA     1
 2 2017/10/2    200       1          AAA
 3 2017/10/2    100       2     100   BBB     1
 4 2017/10/2     50       3     400   AAA     3
 5 2017/10/2    100       3           AAA
 6 2017/10/2    150       3           BBB
 7 2017/10/2    100       3           CCC
 8 2017/10/3    200       1     200   AAA     1
 9 2017/10/3    100       2     300   AAA     3
10 2017/10/3    150       2           BBB
11 2017/10/3     50       2           CCC
A列の日付、C列の同一値で、E列値の違う数をF列上記へ様表示させたいのですが、ご教示をお願いします。
宜しくお願い致します。

(おはな) 2017/10/11(水) 18:15


 F1セルに
 =IF(COUNTIFS(A$1:A1,A1,C$1:C1,C1)=1,COUNT(0/FREQUENCY(IFERROR(MATCH(IF((A$1:A$20=A1)*(C$1:C$20=C1),E$1:E$20,""),E$1:E$20,0),""),ROW($1:$20))),"")
 と入力してShiftキーとCtrlキーを押しながらEnterキーで式を確定(確定後、式が{}で囲まれればOK)その後下へフィルコピーではどうか。
(ねむねむ) 2017/10/13(金) 10:20

 なお上記式は元のデータが最大20行目までとしている。
 もっと行がある場合は式中の$20部分をすべて大きくしてくれ。
 また、ROW($1:$20)は必ず1から最大行数としてくれ。
(ねむねむ) 2017/10/13(金) 10:23

 ねむねむ様

ありがとうございました。
大変助かりました。
(おはな) 2017/10/13(金) 13:27


コメント返信:

[ 一覧(最新更新順) ]


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