[[20090718120021]] 『担当者ごとに抽出して別の表に表示したい』(限界ちゃん) ページの最後に飛ぶ

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

 

『担当者ごとに抽出して別の表に表示したい』(限界ちゃん)

 sheet1
   A@    B    C      D
 1 担当者   月   内容     金額
 2 鈴木    4  高さミス   60,000
 3 鈴木    5  色ミス    110,000
 4 佐藤    9  位置変更   50,000
 5 山田    7  図面ミス   240,000

 のように作った表から、

 sheet鈴木
   A     B    C      D
 1 担当者   月   内容     金額
 2 鈴木     4  高さミス   60,000
 3 鈴木    5  色ミス    110,000
 4

 のように、その担当者の行を、数式で全て別のシートに抽出したいのですが、どのようにすればいいのでしょうか?
  
過去ログ[[20090302154418]]『購入年月ごとに・・・』を参考にがんばったのですが応用することができませんでした。。。

 あと、気をつける点はありますか?例えばA1からの表からでないとダメ、とか・・・。

 初心者で申し訳ありません。どうぞ宜しくお願い致します。


 >数式で全て別のシートに抽出したいのですが
エクセル使っていて、そういう発想はもったいない。
抽出用のシートに「鈴木」と入力したら鈴木さんのデータだけが計算されて出てくる、
と言うつくりにしてはいかがですか。
もしくは、Sheet1をそのまま利用して、オートフィルタで担当者のデータを
いつでも抽出できる、と言うようにもできますね。
 
担当者の人数分だけシートを用意して、なおかつそれを数式で埋めておくとなると、
動作の遅いブックになる可能性はあります。
コンピューターが便利なのは、
「いつでもそのデータがある」ことではなくて、
「いつでもそのデータを抽出できる」と言う点です。
(みやほりん)

なるほど!
鈴木さんのデータだけが計算されて出てくる、というつくりですね。
ぜひ、そうしたいです。

そこでですが、それは過去ログ(全文検索)20090302154418と同じことでしょうか?

そして、同じように作ってみましたが、うまくいきませんでした。

sheet1!の表示が無いものは、すべてsheet2のアドレスで良いんですよね?


 わかりやすいのは検索の為のKEYを点けてあげるやり方です。
一列挿入して、検索用の列とします。
Sheet1
	A	B	C	D	E
[1]	KEY	担当者	月	内容	金額
[2]	1	鈴木	4	高さミス	60000
[3]	2	鈴木	5	色ミス	110000
[4]	2	佐藤	9	位置変更	50000
[5]	2	山田	7	図面ミス	240000
 
A2 =COUNTIF($B$2:B2,Sheet2!$A$2)
Sheet2のA2セルに入力される名前をカウントします。
 
Sheet2
	A	B	C	D	E
[1]	担当者				
[2]	鈴木				
[3]	担当者	月	内容	金額
[4]	鈴木	4	高さミス	60000
[5]	鈴木	5	色ミス	110000
 
A4 =IF(MAX(Sheet1!$A:$A)<ROW()-3,"",INDEX(Sheet1!B$2:B$5,MATCH(ROW()-3,Sheet1!$A$2:$A$5,0)))
 
上記の式をA4セルに入力して必要範囲へコピー。
Sheet1A列で1となっている最初の行をSheet2の4行目、2となっている最初の行を
5行目へ、という風に検索してきます。(INDEX関数の部分)
MAX(Sheet1!$A:$A)<ROW()-3 は表示すべきデータがあるかどうかのチェックで、
上記例でのSheet1のA列には「3」がありませんので、空白文字列("")を表示します。
 
(みやほりん)(-_∂)b


みはほりん さま

詳しい回答、ありがとうございました!!

できました!!! 本当にありがとうございました。

分からないときは、またよろしくお願い致します!!


コメント返信:

[ 一覧(最新更新順) ]


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