プロが教えるわが家の防犯対策術!

このカテゴリでいいのか、PC用語もわかりません(><)勤務表の管理をしているのですが、もっと便利に使いたいので質問させて頂きました。有休の場合の自動計算の仕方がわかりません。一人一人、一日の労働時間はさまざまです。左の縦列Aに名前があり、Bに基本の労働時間、Cからはその日の労働時間(タイムカードを元に入力)なのですが、有休の場合は時間を入力するところ(C列から)に 有 と入力するのですが、有×B(有休×基本の労働時間)を、一番下の合計時間の上あたりに自動計算できるように作りたいのですが、頭かかえてます。この説明で理解してもらえるか心配ですが、よろしくお願いします。。。

A 回答 (2件)

そのような処理を行なう一番簡単な解決方法は、私が既に示したような、


「各人の有給数*各人の基準時間」の小計を各人ごとに用意し、最後に
それらをsum()で合計することです。

VBAでやるという案もありますが、ちょっと荷が重いかもしれません。

もし、どうしても単一セルでやりたければ、
=SUM(COUNTIF(C2:I2,"有")*B2,COUNTIF(C3:I3,"有")*B3)
のようにすることで、可能です。
  ↓
ちょっとごちゃごちゃしているので見やすいように整形すると下記の内容になります。
=SUM(
   COUNTIF(C2:I2,"有")*B2 ,
   COUNTIF(C3:I3,"有")*B3
  )

解決のためのヒントは差し上げられますが、それを元に活用するよう、
アイデアを練るのはあなたしかできません。

私が提示したサンプルを元に対応策を考えてみてください。

もし、私の提示した方法がどうしても対応できない事情があれば、その理由と、
私が#1で示したような画面例をご用意ください。
    • good
    • 0
この回答へのお礼

ありがとうございます☆できました(^○^)/♪初質問で不安いっぱいでしたが、素早い回答で丁寧に教えて頂きとても感謝致します。ありがとうございました!

お礼日時:2004/09/24 20:21

countif関数を使います。



     [ A ] [ B ] [ C ] [ D ]  [ E ] [ F ] [ G ]  [ H ] [ I ]  [ J ] [ K ]
[ 1 ] 名前 基本  1日  2日  3日  4日  5日  6日  7日  合計 有給計
[ 2 ] 阿部   8   8   8    有   8   8    有    8   40  16
[ 3 ] 馬場   6   6   0     6   6   有   有   有   18  18

こんな感じででしょうか?
J2 には「 =SUM(C2:I2)」、K2 には「 =COUNTIF(C2:I2,"有")*B2」
J3 には「 =SUM(C3:I3)」、K3 には「 =COUNTIF(C3:I3,"有")*B3」
という風にすればOKです。

この回答への補足

理解して頂きありがとうございます☆作ってもらった表であってます。しかし説明不足でした。合計は、もちろん「J]にも1人1人の労働時間合計があるのですが、「C」の[ 5 ]に1日の全員の労働時間合計があり(SUM)の方は自動計算できてます。「C」の[ 4 ]に有休計をいれたいのですが、(例)安部さんの3日に 有 と打ち込むと自動的に「E」の[ 4 ]に 8 とでるようにしたいのです。その場合でも同様、関数のCOUNTIFを使用するんですよね?=COUNTIFの後は手打ちで範囲を打ち込んだらいいのでしょうか?SUMの場合、点線のような囲いがでてきて決定させればいいですが・・・バカすぎてすみません。よろしくお願いします。

補足日時:2004/09/23 20:47
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!