Greeting Function

E

edwardpestian

I have the following function. I'm trying to say that if it is before
12:00 pm, say "Good Morning," if after 12:00 pm but before 6:00 pm say
"Good Afternoon," and otherwise say "Good Evening". The function
however, is not working properly. Any ideas?

=IF(NOW()<TODAY()+HOUR(0.5),"Good Morning"&" "&"Today is"&"
"&TEXT(TODAY(),"mmmm dd, yyyy"),IF(NOW()<TODAY()+HOUR(0.75),"Good
Afternoon"&" "&"Today is"&" "&TEXT(TODAY(),"mmmm dd, yyyy"),"Good
Evening"&" "&"Today is"&" "&TEXT(TODAY(),"mmmm dd, yyyy")))

Any ideas?

Thanks.

ep
 
S

SteveG

edward,

I typed in my cut off times in A1:A3 (12:00:00 AM, 12:00:00 PM, 6:00:00
PM respectively).

=IF(AND(TIMEVALUE(TEXT(NOW(),"hh:mm:ss"))>=A1,TIMEVALUE(TEXT(NOW(),"hh:mm:ss"))<A2),"Good
Morning",IF(AND(TIMEVALUE(TEXT(NOW(),"hh:mm:ss"))>=A2,TIMEVALUE(TEXT(NOW(),"hh:mm:ss"))<A3),"Good
Afternoon","Good Evening"))

HTH

Steve
 
H

Heather Heritage

surely

=if(now()-int(now())<.5,"Good Morning",if(now()-int(now())<.75,"Good
Afternoon","Good Evening"))

is simpler?!
 
T

tim m

One thing to remember, unless I am mistaken the time from the NOW function
will only be updated in a cell when a recalculation is done. Will this
affect the formulas that a NOW is part of?

(As in if you just use a NOW formula it will list a time and date, that time
and date will remain as is unless you recalc to match with time passing on
your clock.)
 
E

edwardpestian

Yes, that is correct. TODAY() and NOW() functions are volatile. They
will update when any formula in the entire workbook recalculates
regardless of cell references, or when the workbook is opened or saved.
However, they remain static until excel calculates.

ep
 
B

Biff

even simpler:

A1 = =NOW()

="Good
"&IF(MOD(A1,1)<0.5,"Morning",IF(MOD(A1,1)<0.75,"Afternoon","Evening"))

Biff
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top