• 締切済み

excel2003時間帯の値を返したい

エクセル2003 各時間帯に何時間いたか、その個数を返したいのですがうまくできません。 例 データ:B列には出勤時間、C列には退社時間 D列には滞在時間   返すセル:I列には滞在時間が1時間ごとに、1行目には8~12、等 時間帯を入力済みで、J2:L32の間。   B2 8:25 C2 11:26 D2 3:01(他行には時間入力済み) I2 1時間 J1 8~12 K1 12~19 L1 19~24と入力済み。 J2に =COUNTIF($B:$B,">=8:00")-COUNTIF($B:$B,">=12:00")と入力 するとB列の8時~11時59分までの個数が返されます。 =COUNTIF($D:$D,">=0:00")-COUNTIF($D:$D,">=1:00")と入力すると D列の1時間未満の個数が返されます。 そこで =OR(COUNTIF($B:$B,">=8:00")-COUNTIF($B:$B,">=12:00"),COUNTI($D:$D,">=0:00")-COUNTIF($D:$D,">=1:00"))と入れてみましたが、TRUE と返されてCOUNTIF の 重複ではうまくいきません。 今回のような場合はどのように対 処すればよいのでしょうか?できれば関数で、できればと思います。 他調べても SUMPRODUCT などでてくるのですがよくわかりません。 仕事で至急作らなければならなくなりましたよろしくお願いします。

みんなの回答

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

I2セルへは1時間と入力しますが1時間の意味は1時間から2時間未満の意味をあらわしているとします。 そこでJ2セルには例えば次の式を入力して下方にオートフィルドラッグします。 =SUMPRODUCT((HOUR(D$2:D$100)=ROW(A1))*(HOUR(B$2:B$100)>=8)*(HOUR(C$2:C$100)<=12)) K2セルには次の式を入力して下方にオートフィルドラッグします。 =SUMPRODUCT((HOUR(D$2:D$100)=ROW(A1))*(HOUR(B$2:B$100)>=12)*(HOUR(C$2:C$100)<=19)) L2セルには次の式を入力して下方にオートフィルドラッグします。 =SUMPRODUCT((HOUR(D$2:D$100)=ROW(A1))*(HOUR(B$2:B$100)>=19)*(HOUR(C$2:C$100)<=24))

naginagisa
質問者

補足

大変もうしわけありません。no1、no2の関数を入力させていただきましたが、思うような結果がでません。 >I2セルへは1時間と入力しますが1時間の意味は1時間から2時間未満の意味をあらわしているとします。 とは別としまして。 no3の方の様な結果が理想です。質問の仕方が悪かったかもしれません申し訳ありません、よろしかったらお助けください。

関連するQ&A

専門家に質問してみよう