[[20140411172919]] 『人数のカウントについて』(肉球) ページの最後に飛ぶ

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

 

『人数のカウントについて』(肉球)

いつも勉強させていただいています。
今日は下記の関数がわかりませんのでご教授ください
従業員の勤務時間と稼働人員数の表を作っています。
Aの列には従業委員名と午前・午後をしるし、Bの列には従業員の勤務時間を入力します。
7Bには、その日働いた人数をカウントしたいのですが、午前と午後とを分けて入力している関係で、一人の人が午前と午後働いている場合は2人でカウントしてしまう関数しかわかりません。午前と午後同一の従業員が働いても一人となるカウントがあれば教えてください。

  A    B
1田中AM  3
2田中PM  5
3佐藤AM  0
4佐藤PM  5
5木下AM  3
6木下PM  0
7稼働人員 4

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


 A列の名前と AM、PM を分離しておけば
 =SUMPRODUCT(1/COUNTIF(A1:A7,A1:A7))
 などでもできそうですが、勤務時間が0のものを除くのであれば、もう少し工夫が必要そうです。

 作業列を使用すれば、話は簡単になると思うのですが。
(Mook) 2014/04/11(金) 20:33

Mookさま

ありがとうございます。

私の説明が悪くてうまく伝わっていないようで申し訳ありません。また表記に誤りがありました。
B7については3です。

田中さんが午前も午後も働いたとしても、同じ職員が勤務したのだから稼働人員としては1名、佐藤さんが午後のみ勤務したとしても、稼働人員数としては1名とカウントしたいと考えています。

このようなことができる関数があればB7にいれてその日働いた人員数の合計をカウントしたいと考えています。
(肉球) 2014/04/11(金) 22:35


 こんな感じかな
 =COUNT(1/(MATCH(SUBSTITUTE(A1:A6,"A","P")&"TRUE",SUBSTITUTE(A1:A6,"A","P")&(B1:B6>0),0)=ROW(A1:A6)))
 配列数式です

(By) 2014/04/12(土) 08:54


 C2 =SUM(B1:B2)  C1とC2を選択してC6までオートフィル。
 B7 =COUNTIF(C1:C6,">0")
(笑) 2014/04/12(土) 10:26

 同名者のAM・PMが必ず連続して存在しているのかな?
 午前のみ、午後のみの勤務者はいないのかな

 =SUMPRODUCT((B1:B6+B2:B7>0)*MOD(ROW(A1:A6),2))

 (笑)さんの回答
 >C2 =SUM(B1:B2)
  B1+B2 でいいですね

(By) 2014/04/13(日) 19:43


 >同名者のAM・PMが必ず連続して存在しているのかな?
 連続していなければ並べ替えましょう。

 >午前のみ、午後のみの勤務者はいないのかな
 例を見ればわかると思うけど、佐藤さんは午後のみ、木下さんは午前のみの勤務。

 >B1+B2 でいいですね
 SUM ではまずいことでもあるのかな?

 >=SUMPRODUCT((B1:B6+B2:B7>0)*MOD(ROW(A1:A6),2))
 循環参照になりますね!
 =SUMPRODUCT((B1:B5+B2:B6>0)*MOD(ROW(A1:A5),2))
 かな?
(笑) 2014/04/13(日) 20:49

 (笑)さん ご指摘及び訂正ありがとうございます。
 B7に入力する式としては不適切でしたので
 >=SUMPRODUCT((B1:B5+B2:B6>0)*MOD(ROW(A1:A5),2))
 に訂正下さい

 >SUM ではまずいことでもあるのかな?
 =SUM(B1:B2)でも SUM(B1,B2)  SUM(B1+B2) B1+B2でもいいんじゃないですか

 以下は質問者への質問です

 訂正します
 >午前のみ、午後のみの勤務者はいないのかな
 午前のみ、午後のみの勤務可能者はいないのかな
  A    B 
 1田中AM  3 ・・・午前、午後勤務可能者
 2田中PM  5 
 3佐藤AM  0 ・・・午前のみ勤務可能者
 4佐々木PM 5 ・・・午後のみ勤務可能者
 5木下AM  3 ・・・午前、午後勤務可能者
 6木下PM  0 
 7稼働人員 
 というようなことがあるのか を想定して質問しています

 因みに、B列は全角で提示してありますが文字ですか?

(By) 2014/04/13(日) 23:43


 管理人さ〜ん、誰かひとのコメントを勝手に消してるのがいるよ〜。
 再々掲。

 >=SUM(B1:B2)でも SUM(B1,B2)  SUM(B1+B2) B1+B2でもいいんじゃないですか

 だったら、いちいち
 >B1+B2 でいいですね
 などと書くことないんじゃないですか

 どうしても書きたいのなら
 B1+B2 でもいいですね
     ~~~~
 因みに、B列は数式の結果で、且つ「""」で空白にしている場合は
 >SUM(B1+B2) 
 >B1+B2
 >=SUMPRODUCT((B1:B5+B2:B6>0)*MOD(ROW(A1:A5),2))
 これ全部エラーになりますね!
 C列のエラーはCOUNTIFには影響ないですけどね!
(笑) 2014/04/14(月) 01:49

 考え方によって式も変わってきます

 作業用列を使用した場合で条件を式にした場合
 C2=IF(OR(B1>0,B2>0),1,0)
 B7 =SUM(C2:C6)

 IF関数を省略して
 C2=OR(B1>0,B2>0)
 これを、条件を0と0以外に分けると考えると
 C2=OR(B1,B2)  または
 C2=OR(B1:B2)  と記載することもできます
 B7 =SUMIF(C2:C6,"TRUE")

 論理値を四則演算で数値化すると
 C2=OR(B1:B2)*1  
 B7 =SUM(C2:C6)

(By) 2014/04/17(木) 21:56


コメント返信:

[ 一覧(最新更新順) ]


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