[[20200514112356]] 『重複データやピボットテーブルについて。』(こぶた) ページの最後に飛ぶ

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

 

『重複データやピボットテーブルについて。』(こぶた)

トレーニングジムのトレーニング実績時間を管理するとします。

・スタッフは4人(あ・い・う・え)で人数もスタッフも常に変化します。
・会員はグループに分けられており、Aグループ(会員?g@・?A・?B・・・?H)
 Bグループ(?I〜?R)、Cグループ(?S〜㉙)

ピボットテーブルにて範囲を参照し、

フィールド内

・担当(スタッフ名あ〜え)
・区分2(グループ名)
・区分(会員名)

・コマ数

   

行ラベル      回数   時間(h)    
スタッフあ
  グループA 
      ?@   24
      ?A   89
      ?B   102
グループA集計   215
  グループB   
      ?I   1
      ?J   2
 グループB集計  3
スタッフい
  グループB
      ?K   1
      ?L   3
 グループB集計  4

上記ピボットテーブルを作成しました。

右側にコマ数×20÷60(1コマ20分、時間単位表記)の計算結果を
入れたいのですが、うまくいきません。
また、結果を少数点第2位で切り捨てたいのですが、可能でしょうか?

最初は、スタッフとグループのデータを元にCOUNTIFSを使用し
集計しようと試みていたのですが、スタッフのデータを抽出した際(フィルタ
フィルタオプションから重複データを削除し)にうまくいかず、
断念しました。
うまくいかなかったのは、B8以降にプルダウンリストを使用し、ランダムな
表(行下方の余白も含む)をリスト範囲に選択し、B2〜に重複を無視したデータを
抽出したところ、

    B
1  担当者
2   あ(なぜかプルダウンリストの設定あり。)
3   い
4   う
5   え
6   あ

と"あ"のデータが重複してしまったために断念し、ピボットテーブルの
使用も検討している訳です。

担当者の重複以外のデータを抽出できるのであれば、解決するとは
思うのですが、ここも含めてご教授いただければありがたいです。  

     

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


すみません!
文字化けしてますが、会員?b?わかりやすい数字で表すため、数字を〇で囲っていました。
グループAを1〜9
グループBを10〜19
グループCを20〜29
と設定していました。

(こぶた) 2020/05/14(木) 12:15


 フィルターオプションのところしか読んでません。

 うまくいかないのはリスト範囲を B8 からにしているからでは?
 B7セルに「担当者」と入力し、範囲を「B7」からにはできないんですか?

 以上
(笑) 2020/05/14(木) 15:32

>(笑)様

いつもありがとうございます!
なるほど!!

できました。
お陰様でひとつ技術が増えました。

が!!

担当者データに新しい担当者名を入力すると反映しませんでした。
このフィルターオプションはその都度作業しないといけないのですね。

担当者名や人数の変化に合わせてB2:B6のデータを自動で反映させたいのですが、
困難でしょうか?

ピボットテーブルもデータが変わると更新(クリックするだけですが)しないといけないので、
セルへ文字を入力する程度のスタッフでも操作できるよう作成したかったのです。

説明不足で申し訳ありません・・・。

(こぶた) 2020/05/14(木) 16:11


 数式でもいいんですか?

 プルダウンリストが B8:B15 だとして

 B2 =IFERROR(INDEX(B:B,AGGREGATE(15,6,ROW($B$8:$B$15)/(MATCH($B$8:$B$15,$B$8:$B$15,0)=ROW($B$1:$B$15)),ROW(B1))),"")
 B6までコピー

 ■作業列を使ってもいいのなら
 どこでもいいですけど C列で説明

 C8 =IF(COUNTIF($B$8:B8,B8)=1,ROW(B1),"")
 C15までコピー

 B2 =IFERROR(INDEX($B$8:$B$15,SMALL($C$8:$C$15,ROW(B1))),"")
 B6までコピー

 以上
(笑) 2020/05/14(木) 16:43

 作業列を使う方ですけど
 他に何も入力しない列なら

 C8 =IF(COUNTIF($B$8:B8,B8)=1,ROW(),"")
 C15 までコピー

 B2 =IFERROR(INDEX(B:B,SMALL(C:C,ROW(B1))),"")
 B6 までコピー

 でも
(笑) 2020/05/14(木) 16:48

>(笑)様

いつもありがとうございます!!

『一番最初に出てくる行?b?表示し、番号順に並べた行?b?返し、空白を詰める』という認識で
よろしかったでしょうか??

ようやく完成いたしました。

またお願い致します。
(こぶた) 2020/05/15(金) 11:51


コメント返信:

[ 一覧(最新更新順) ]


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