2

こんにちは、私は基本的な Excel が得意ですが、給与計算に使用するスプレッドシートと必要な数式がありますが、それを機能させるには、データがない場合はすべてのセルを 0 のままにしておく必要があります。それに入る。

私の給与計算シートは、入力されたすべての時間の合計を計算する必要がありますが、残業時間も計算します (当社のシステムは、1 日 10 時間、週 44 時間後に残業時間を計算します)。セルですが、2 番目の列は時間を与えてくれる必要がありますが、これらの時間の多くは規則的ですが、総労働時間の 10 時間を超えることはできません。

たとえば、John が 13 時間働いた場合、そのうちの 10 時間を通常の時間に合わせる必要があります。ただし、44 時間を超えないようにする必要もあります。数式は機能していますが、これを現場スタッフにテンプレートとして渡し、時間をかけて送信します。彼らはゼロを入力しないので、より良い数式を見つけるか、少なくともこれを修正したいと考えています. 通常の時間を見つけるための私の式は

=MIN(MIN(B11,10)+MIN(C11,10)+MIN(D11,10)+MIN(E11,10)+MIN(F11,10)+MIN(G11,10)+MIN(H11,10),44)

しかし問題は、ゼロのない空白があると、合計が自動的に 44 になることです。

私がやりたいことをするために、より良い公式や私のものを修正する方法があるかどうかを理解しようとしています.

4

1 に答える 1

2

各セルのMIN内でN関数を使用できます。つまり、

=MIN(MIN(N(B11),10)+MIN(N(C11),10)+MIN(N(D11),10)+MIN(N(E11),10)+MIN(N(F11),10)+MIN(N(G11),10)+MIN(N(H11),10),44)

すべてのセルが空白の場合、ゼロになります

短いバージョンが必要な場合は、この「配列数式」を試してください

=MIN(SUM(IF(B11:H11>10,10,B11:H11)),44)

CTRL+ SHIFT+で確認ENTER

....または、これは少し長くなりますが、配列エントリは必要ありません

=MIN(SUMPRODUCT((B11:H11>=10)*10+(B11:H11)*(B11:H11<10)),44)

于 2013-10-04T19:17:44.757 に答える