プロが教える店舗&オフィスのセキュリティ対策術

始めてのCOUNTIFS関数を使ってみましたが、良い計算結果が表れません。
=COUNTIFS(G:G,">=$CY3",G:G,"<=$CZ3",H:H,"8:00",H:H,"20:00")
どなたか、ご指導願います。

G列 :一年間の日付 (4月~来年3月)
H列 :始業時間 「休み」「8:00」「20:00」「明け」をくり返す
CY列:月始の日付****/*/1
CZ列:月末の日付****/*/**
DB列:※月内の8:00と20:00をH列より探しだし合計数を表示する。

例:4月から来年の3月までの月毎の出勤日数(8:00+20:00)を表す。
  4月の出勤日数は15日となります。(人力計算)

「COUNTIFS 日付より月内の表示時間」の質問画像

質問者からの補足コメント

  • CY列 2019/1/1  が2019/1/4になっていて(入力ミス)
    CZ列 2019/1/31 が2019/2/28になっていました訂正します。
       =EOMONTH(CY12-1,1)

      補足日時:2018/02/25 23:25
  • 表記内容関数

    H列には「休み」を返して下に計算
    =IF(H3="8:00","20:00",IF(H3="20:00","明け",IF(H3="明け","休み","8:00")))

    B1に2018
    CY列:関数
    =DATE($B$1,4,1)
    CZ列:関数
    =EOMONTH(CY3-1,1)

      補足日時:2018/02/26 14:19
  • fujillinさん
    このページでお願いすることではないですが、

    質問題目「エクセル 関数複合 IF VLOOKUP TIME」も 優秀な頭脳で検討願えませんか

    大変に困っています。

    No.1の回答に寄せられた補足コメントです。 補足日時:2018/02/26 15:03

A 回答 (2件)

No1です



>SUMPRODUCTはうまくいきませんでした。
ほぼ同時に追加された補足を見ると。時刻の方はシリアル値ではないようですので、No1ではうまくいきませんね。

シリアル値に変えていたTIMEVALUE関数を取り除けば、多分うまくいくものと思います。
=SUMPRODUCT((G:G>=Cy3)*(G:G<=CZ3)*((H:H="8:00")+(H:H="20:00"))*1)
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます・

=SUMPRODUCT((G:G>=Cy3)*(G:G<=CZ3)*((H:H="8:00")+(H:H="20:00"))*1)

H列のセルの書式設定は「標準」で行いました。

表示:1が表示されました?????

お礼日時:2018/02/26 18:23

こんにちは



COUNTIFS等の複数条件は、AND条件として判断されますので、
>8:00と20:00をH列より探しだし合計数を表示する
のようなOR条件の場合は、別々に求めて加算すれば求められます

日付、時刻ともシリアル値と仮定してよいものなら・・・

=COUNTIFS(G:G,">="&CY3,G:G,"<="&CZ3,H:H,"8:00")+COUNTIFS(G:G,">="&CY3,G:G,"<="&CZ3,H:H,"20:00")

あるいは、一気に求めるなら
=SUMPRODUCT((G:G>=Cy3)*(G:G<=CZ3)*((H:H=TIMEVALUE("8:00"))+(H:H=TIMEVALUE("20:00")))*1)
とか。
この回答への補足あり
    • good
    • 0
この回答へのお礼

早速のご回答、本当にありがとうございました。
COUNTIFSで良い結果が表れました。
SUMPRODUCTはうまくいきませんでした。空白で計算結果が表れませんでした。
本当にありがとう御座いました。

お礼日時:2018/02/26 14:56

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