Cell colour chg when formula results equal a weekend day, i.e., "Saturday" and a date that falls on

  • Thread starter StargateFanFromWork
  • Start date
S

StargateFanFromWork

Hope the subject line isn't totally muddy <g>.

I have a spreadsheet that is super. The only trouble is that weekends
aren't differentiated from weekdays in any way.

Since the spreadsheet contains a macro for the user to select the starting
date and then the rest of the spreadsheet is then populated for 3 weeks
following that date, Saturday and Sunday always fall on different cells at
any given time. Also, affected cells may say "Saturday" or "Sunday" but
there is actually only a formula in any of them. The only exception is the
very first cell which is the initial one the macro dumps to. So the first
might read "Friday" if I choose today's date in the prompt box, but all the
rest of the days of the weeks shown display the dates according to
appropriate variations of this formula:

=IF(A2<>"",A2+1,"")

In today's example, this actual formula above displays "Saturday". The cell
immediately below displays "Sep.17.2005". I'm hoping that since it's the
same type formatting issue, hopefully resolving cell colouring for the text
"Saturday" issue will lead me to figure out how to do so for dates that fall
on weekends.

Is there a way to do this cell colour change under these conditions?

I'm in favour of conditional formatting, but couldn't figure out how to do
so because of the fact above that no actual text is found where all the
Saturdays and Sundays are, only the formula. Tx.! :eek:D
 
P

Peter T

Look at Excel's WEEKDAY function, eg

=WEEKDAY(mydate,3)

If it returns 0-4 it's a weekday. Lends itself nicely to conditional
formatting.

Regards,
Peter T
 
J

June Macleod

You mentioned that you already have a macro on this spreadsheet to pick up
the first date. If you were to run the following macro after you had
completed the selection I think it will do what you want.

Public Sub COLOURCELL()

For Each c In Range("workingdays")
c.Select
If Weekday(ActiveCell.Value) = 1 Or Weekday(ActiveCell.Value) = 7 Then
With Selection.Interior
.ColorIndex = 6
.Pattern = xlSolid
End With
End If
Next c
End Sub

June
 
S

StargateFanFromWork

This weekday function looked promising but the same trouble may exist as
before: the dates will always vary in any given cell. B2 may have any day
of the week.

When I finally got a working formula - at least, it returns a value - I get
Thursday instead of Saturday.

I modified this: =IF(A2<>"",A2+1,"")

to what would work, which happened to be this:
=IF(A2<>"",WEEKDAY(A2+1,3),"")

And in the cell that is formatted to show date in text format, it says
Thursday instead of Saturday.

Did I do something wrong?
 
S

StargateFan

I've no idea !!

<lol> Oh my lord, I'm going around in circles and I'm starting to
affect everyone else ...

I'm just not understanding exactly what I'm to do. I know as just a
power user that that happens often, but after wrapping my brain around
all the suggestions, I'm no closer. I think I'm missing something,
something perhaps new that I don't know about.

Fortunately, I found out about a very neat new service called you send
it. I've just "uploaded' the template in question. It's available at
the following link for a limited time, I think it's a few days:
http://s51.yousendit.com/d.aspx?id=0RA443KN8FO4826G7278BKOLE9
Pls access it, if you would, anyone, to see what I've been trying to
do.

If you do look at it, you'll see a sheet that a macro populates with
user inputing on the starter date, which is neat. The form is
completely blank because of the IF part in each formula.

What would really, really help and what I need is that any cells
falling on the weekend days of Saturday and Sunday, that they change
colour. Let's just say the 2 lighter greys in the available colours,
say. To give an example, if you choose today's date and that's put in
A1 and A2, that A3 changes to the lightest grey and A1 and A2 change
to the 2nd lightest grey (or just 1 grey if that's all that can be
done). But without having a second macro to change the colours. I
just know my limitations and would prefer the colour change be built
right into the cells themselves. Hopefully the conditional formatting
can be worked into that somehow.

Thanks so much! Appreciate everyone's help so far. It's not anyone's
fault I'm not getting.
Is your problem you only want to apply CF if the your IF formula returns a
data and not return ""

=AND(WEEKDAY($A1,3)>4,$A1<>"")
=AND(WEEKDAY($A1,3)<5,$A1<>"")

If using my "S" test also combine with a similar AND function

Regards,
Peter T

[snip]
 
P

Peter T

OK I got your file and think I follow. We were so nearly there!

First to clarify to others to avoid downloading your file.

A1 contains a day name as a string, that of the date in A2
A2 contains a Date
A3 is an empty cell

A1 & A2 are populated with a macro (before the macro is run the cells are
empty)

A1 & A2, CF with medium grey and A3 with light grey, if A2 is a Sat or Sun
and A2 actually has a date.

This pattern of 3 cells is repeated 3*7 times with incremented dates by use
of an If formulas

------------------
CF's for A1, A2 & A3 will have exactly the same formula using the "Formula
Is" setting:
=AND(WEEKDAY(A2,3)>4,A2<>"")

Format colour for A1 & A2 medium grey, light grey for A3
Copy A1:A3 an pastespecial formats over the entire area, a multiple of 3
rows.

Regards,
Peter T


StargateFan said:
I've no idea !!

<lol> Oh my lord, I'm going around in circles and I'm starting to
affect everyone else ...

I'm just not understanding exactly what I'm to do. I know as just a
power user that that happens often, but after wrapping my brain around
all the suggestions, I'm no closer. I think I'm missing something,
something perhaps new that I don't know about.

Fortunately, I found out about a very neat new service called you send
it. I've just "uploaded' the template in question. It's available at
the following link for a limited time, I think it's a few days:
http://s51.yousendit.com/d.aspx?id=0RA443KN8FO4826G7278BKOLE9
Pls access it, if you would, anyone, to see what I've been trying to
do.

If you do look at it, you'll see a sheet that a macro populates with
user inputing on the starter date, which is neat. The form is
completely blank because of the IF part in each formula.

What would really, really help and what I need is that any cells
falling on the weekend days of Saturday and Sunday, that they change
colour. Let's just say the 2 lighter greys in the available colours,
say. To give an example, if you choose today's date and that's put in
A1 and A2, that A3 changes to the lightest grey and A1 and A2 change
to the 2nd lightest grey (or just 1 grey if that's all that can be
done). But without having a second macro to change the colours. I
just know my limitations and would prefer the colour change be built
right into the cells themselves. Hopefully the conditional formatting
can be worked into that somehow.

Thanks so much! Appreciate everyone's help so far. It's not anyone's
fault I'm not getting.
Is your problem you only want to apply CF if the your IF formula returns a
data and not return ""

=AND(WEEKDAY($A1,3)>4,$A1<>"")
=AND(WEEKDAY($A1,3)<5,$A1<>"")

If using my "S" test also combine with a similar AND function

Regards,
Peter T

way
or function
to True/false
in

[snip]
 
S

StargateFan

OK I got your file and think I follow. We were so nearly there!

First to clarify to others to avoid downloading your file.

A1 contains a day name as a string, that of the date in A2
A2 contains a Date
A3 is an empty cell

A1 & A2 are populated with a macro (before the macro is run the cells are
empty)

A1 & A2, CF with medium grey and A3 with light grey, if A2 is a Sat or Sun
and A2 actually has a date.

This pattern of 3 cells is repeated 3*7 times with incremented dates by use
of an If formulas

------------------
CF's for A1, A2 & A3 will have exactly the same formula using the "Formula
Is" setting:
=AND(WEEKDAY(A2,3)>4,A2<>"")

Format colour for A1 & A2 medium grey, light grey for A3
Copy A1:A3 an pastespecial formats over the entire area, a multiple of 3
rows.

Regards,
Peter T

Thank you. I will look at this tonight. At least you're still saying
it's do-able! <lol>
 

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