重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

A1 に =now() を入れて 現在の時刻を表示させています。

このA1が0:00から0:59の時に B1に 寝る時間です と表示させるにはどうすればいいでしょうか?

B1に
=if(and(A1>0:00,A1<0:59),"寝る時間です","")

でいいでしょうか?
お願いします

A 回答 (4件)

=if(and(A1>0:00,A1<0:59),"寝る時間です","")



上記の式で時刻を示すコロンで区切るものは数値として認識しません。
まずは文字列として二重引用符で挟むなどの必要があります。
さらに数値として認識するような式に設定する必要があります。
=A1<"0:59"*1 や =A1<TIMEVALUE("0:59")など

それからNOW関数で取得した日時は、シリアル値として整数に年月日
があり、小数点以下に時間が設定されています。
ですから単純に「A1<"0:59"*1」にするだけでは、年月日部分の整数の
値があるためにTRUEとして認識しません。
そのため、No.1さんが示しているように[MOD関数]などを使って小数点
以下の数値(時間のみ)を取り出す必要があるのです。

IF関数とAND関数と使うなら、以下のような式にする必要があります。

=IF(AND(MOD(A1,1)>TIMEVALUE("0:00"),MOD(A1,1)<TIMEVALUE("0:59")),"寝る時間です","")

これなら、0時台以外でも時刻の設定を細かく設定できると思います。

関連過去ログ
https://oshiete.goo.ne.jp/qa/7868538.html
http://oshiete.goo.ne.jp/qa/1155208.html
    • good
    • 1

A1 =TIMEVALUE(TEXT(NOW(),"hh:mm:ss")) ・・・書式設定で時刻表示にしてください。


B1 =IF(AND(A1>TIMEVALUE("0:00"),A1<TIMEVALUE("0:59")),"寝る時間です","")
    • good
    • 2

こんばんは!



=IF(HOUR(A1)<1,"寝る時間です","")
としてみてはどうでしょうか?m(_ _)m
    • good
    • 1

=IF(MOD(A1,1)-"1:0"<0,"寝る時間です","まだまだ勉強!")

    • good
    • 1

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