エクセルの学校


[[20060926090923]] 『名前ごとに集計したい。』(かき) >>BOT

[ 初めての方へ | 一覧(最新更新順) |

|
| 全文検索 | 過去ログ | HOME ]

 

『名前ごとに集計したい。』(かき)

 名前       期間      りんご      みかん     いちご
 田山	     H17/下	   1		
 田山・短原	H18/下	   3		2
 田山・砂本	H17/下	   1		1        1

 上記表があるとき
 田山・短原・砂本がそれぞれ買ったりんごとみかんを簡単に集計できるように(下記のような感じです)したいのですがやり方がわかりません。

 名前       期間      りんご      みかん     いちご
 田山       H17/下	     2         1       1
 田山       H18/下       3          2
 短原       H18/下       3          2
 砂本       H17/下       1         1       1

是非ご教示ください。

 表の行数は1000行前後で苗字は50数名の苗字があります
 (さらにさまざまな組み合わせがあります。例えば「田山・川田・内田」といった3人の名前が同じセルに書かれていることもあります)

 期間は今のところH17/下とH18/下だけです。
 列数は
 名前、期間、りんご、みかん、いちご の5列です。

 よろしくお願いいたします


 「田山・川田・内田」といった3人の名前が同じセルに書かれていることもあります

 ということで、最大3人まで同じセルにありうるとします。

 まず名前の列の右側に2列挿入し、

  A          B      C     D
 名前                 期間
 田山                    H17/下
 田山・短原               H18/下 

 A列を選択して、データ>区切り位置で、「カンマやタブなど...」にチェックをして次へ 
 区切り文字で「その他」にチェックをして、その右に "・" を入れ、「完了」

 これで、2人・3人のところは B列C列にデータが入りますので、
 オートフィルタでまず C列が空白以外の列を表示し、行全体をコピーし、
 データの一番下の行に貼り付け、このグループだけ、A列B列を削除、左詰にします。
 続いてオートフィルタで B列が空白以外の列を表示し、同じく行全体をコピー、
 先のデータのさらに下に貼り付け、このグループだけA列を削除します。
 最後に、全体のB列C列を削除します。

 これで ひとりずつのデータになりますので、あとはピボットデーブルで集計します。


 ↑どなたですか?
 HNをおながいします。
 表が↓のような配置だとすると、
	[A]		[B]	[C]	[D]	[E]
[1]	名前		期間	りんご	みかん	いちご
[2]	田山		H17/下	1		
[3]	田山・短原	H18/下	3	2		
[4]	田山・砂本	H17/下	1	1	1	
[5]						
[6]	名前		期間	りんご	みかん	いちご
[7]	田山		H17/下	2	1	1
[8]	田山		H18/下	3	2	
[9]	短原		H18/下	3	2	
[10]	砂本		H17/下	1	1	1
 
C7=TEXT(SUMPRODUCT((ISERROR(FIND($A7,$A$2:$A$4))=FALSE)*($B$2:$B$4=$B7)*C$2:C$4),"0;;;")
下と右にフィルドラッグでどうでしょうか?
(ROUGE)

 ROUGEさま

 >C7=TEXT(SUMPRODUCT((ISERROR(FIND($A7,$A$2:$A$4))=FALSE)*($B$2:$B$4=$B7)*C$2:C$4),"0;;;")
 >下と右にフィルドラッグでどうでしょうか?

 すみません。基本的なことをお聞きすることお許しください。
 フィルドラックとどういう風にすることですか?
(かき)

 ↓こちらをご覧下さい。(ROUGE)
http://www.excel.studio-kazu.jp/lib/e2aw/e2aw.html#Fill

 ROUGEさま
 =TEXT(SUMPRODUCT((ISERROR(FIND($A7,$A$2:$A$4))=FALSE)*($B$2:$B$4=$B7)*C$2:C$4),"0;;;")
 をC7に貼り付けフィルドラックを行ってみましたが特に変化がありませんでした。

 	[A]		[B]	[C]	[D]	[E]
 [1]	名前		期間	りんご	みかん	いちご
 [2]	田山		H17/下	1		
 [3]	田山・短原	H18/下	3	2		
 [4]	田山・砂本	H17/下	1	1	1	
 [5]						
 [6]	名前		期間	りんご	みかん	いちご
 [7]	
 [8]		
 [9]		
 [10]	 

 C7をダブルクリックして=TEXT(SUMPRODUCT((ISERROR(FIND($A7,$A$2:$A$4))=FALSE)*($B$2:$B$4=$B7)*C$2:C$4),"0;;;") とコピペした。
 C7を+ポインタで→・↓にドラックした。
 変化なし(真っ白だった。)

 これでよろしかったでしょうか・・・?
 何か間違った方法を行っていましたら是非お教えください。お願いいたします。
 (かき)


 あら?A列、B列には予め名前と期間のリストがセットされているのでは?
 なにもないのであれば、当然数式はなにも返しません(真っ白でOKです)。
 (ROUGE)

 ROUGEさま

 あ、なるほど!!そういうことですね!!
 すみませんそれはことらの大々的なミスです。すみません。
 リストをはっつけて再度チャレンジしてみます。
 お手数おかけしました!
 (かき)

ROUGEさま

 ありがとうございました。
 名前を表記したらカウント数が表示されました。
 しかし下記問題が発生してしまいました。
 このような場合どおすればよろしいですか?
 ご教示いただけますか?お願いいたします。

 牧と牧村と言うものがいた場合:
 牧  H17/下 のりんごに
 牧村 H17/下 のりんごの数が足されているようです。

 基
 牧  H17/下   0  0  0
 牧  H18/上   0  1  1
 牧村 H17/下   1  1  1
 牧村 H18/上   0  1  1


C7以降下ROUGEさま教えていただいたリスト

 牧  H17/下   1  1  1
 牧  H18/上   0  2  2
 牧村 H17/下   1  1  1
 牧村 H18/上   0  1  1
(かき)


 =TEXT(SUMPRODUCT(ISNUMBER(FIND("・"&$A7&"・","・"&$A$2:$A$4&"・"))*($B$2:$B$4=$B7)*$C$2:$$C$4),"0;;;")
 でどうですか?
 (ROUGE)

コメント:

[ 一覧(最新更新順) |

]


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