- ベストアンサー
Aに特定の値が入っていた場合、BとCを計算していく
画像のようなシフト表において、その日ごと・店ごとの勤務時間の合計を算出したい場合の数式が書けず困っております。 黄色に塗っているセルを算出したいのですが、今現在は =IF(B3="店A",C4-B4,0)+IF(D3="店A",E4-D4,0)+IF(B5="店A",C6-B6,0)+IF(D5="店A",E6-D6,0)+IF(B7="店A",C8-B8,0)+IF(D7="店A",E8-D8,0)+IF(B9="店A",C10-B10,0)+IF(D9="店A",E10-D10,0)+IF(B11="店A",C12-B12,0)+IF(D11="店A",E12-D12,0) というようにIF関数でAM・PMの1ブロックごとに計算し、それを合計していくという手法でやろうとしております。 一応図のように正しい値が出てくるのですが、人数が多い為作業量が多くなってしまい、また途中で新しい行を挿入などすると破綻してしまうと思った為、何か良い数式があればと思い質問させて頂きました。 どなたかご教示頂けますと幸いです。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
画像の通りとして、 店A 店B 以外もあるかもしれません。 B14 店A B15 店B に変更して下さい。(データと同じ表記) 表示形式、ユーザー定義 「@"勤務時間合計"」にすれば、画像と同じ表示になります。 D14 =SUMIF(B$3:D$11,B14,C$4)-SUMIF(B$3:D$11,B14,B$4) 下へコピペ。 B4~E15 を右へコピペ。
お礼
皆さん沢山ご回答いただきありがとうございました。 全て試させて頂きましたが、今回は一番理想に近かったこちらのご回答をBAとさせて頂きました。 非常に使い勝手がよく大変助かりました。 ご教示頂きました全ての皆様、ありがとうございました。