アプリ版:「スタンプのみでお礼する」機能のリリースについて

ある一定時間を超えた場合の超えた時間のみを合計する方法をご存知でしたら教えてください。
例えば、1日8時間労働を8.0として、その8.0を越える日の8.5だったら8.5-8.0=0.5の0.5の部分の月の合計=残業分の合計を出したいと考えています。
A列に氏名があり、B列~AF列まで1日~31日の労働時間が入力されているdateが40人分あります。
AG列に式を、入力するとすると
8.0を超える時間の合計を出すには=SUMIF(A1:AF1,">8.0",A1:AF1)でもとめられますが、
8.5と入力されていた場合の0.5部分の月の合計を算出するにはどうすればよいでしょうか。
宜しくお願い致します。

A 回答 (3件)

いくつかあると思いますが、


 
=SUMPRODUCT((A1:AF1>8)*(A1:AF1-8))

これでもできそうです。
 
 
    • good
    • 3
この回答へのお礼

ありがとうございました。
VBAのR1C1方式で入力させたいと考えていましたので
配列有りの計算方法ではなく、わかりやすいスマートな関数が希望でした。
SUMPRODUCT関数は何回か使用したことがあったのですが、色々な使い方が出来るのですね。
改めて勉強になりました。

お礼日時:2010/07/01 22:51

こんばんは!


一例です。

2行目からデータがあるとして
AF2セルに
=SUMIF(B2:AF2,">8",B2:AF2)-COUNTIF(B2:AF2,">8")*8

としてみてはどうでしょうか?

以上、参考になれば良いのですが
他に良い方法があれば読み流してくださいね。m(__)m
    • good
    • 1

=SUMIF(A1:AF1,">8.0")-COUNTIF(A1:AF1,">8.0")*8


または
=SUM(MAX(A1:AF1-8,0))
としてCtrl+Shift+Enterで配列数式にする。
または
=SUMPRODUCT(MAX(A1:AF1-8,0))
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A