days of the week formulas

B

Bob

I'm looking for formulas that will give me the first Monday and last Sunday
of a period. For example The First Monday of February 2008 would be February
4 and the last Sunday would be March 2. Add x number of days to the formulas
to give me the first Monday in April 2008 as April 7 and the last Sunday as
May 4.
 
M

Mike H

probably too complicated but it seems to work

=A1+(2<WEEKDAY(A1))*(7-WEEKDAY(A1)+2)+(2>=WEEKDAY(A1))*(2-WEEKDAY(A1))-7


Your date in A1

Mike
 
R

Ron Rosenfeld

I'm looking for formulas that will give me the first Monday and last Sunday
of a period. For example The First Monday of February 2008 would be February
4 and the last Sunday would be March 2. Add x number of days to the formulas
to give me the first Monday in April 2008 as April 7 and the last Sunday as
May 4.

What is your definition of a "period"?

With any date in A1, the first Monday of the month of that date is given by the
formula:

=A1-DAY(A1)+8-WEEKDAY(A1-DAY(A1)+6)

But I don't know how you are computing the "end of the period".
--ron
 
B

Bob

I interchanged the word period with month. For example the month of May 2008
would begin with April 28 and end the final Sunday would be June 1.
 
R

Ron Rosenfeld

I interchanged the word period with month. For example the month of May 2008
would begin with April 28 and end the final Sunday would be June 1.

Now I am completely confused. I always thought that May began on May 1 and
ended on May 31; and that June and April were not in the month of May.

Your going to have to be more explicit about your calendar rules in order for
me to help you.
--ron
 
B

Bob

This isn't a calendar month but more of a complete monthly period beginning
with a Monday and ending with a Sunday.
If the calendar month ends on a Tuesday the period would continue to the end
of the week through Sunday. If the calendar month begins after a Monday the
period would begin with the preceding Monday. Also know as a broadcast month.
 
R

Rick Rothstein \(MVP - VB\)

I'm guessing these aren't necessarily the most efficient formulas, but they
do appear to work...

First Monday of the Month
=================================
=DATE(YEAR(A1),MONTH(A1),1)-WEEKDAY(DATE(YEAR(A1),MONTH(A1),1))-7*(WEEKDAY(DATE(YEAR(A1),MONTH(A1),1))=1)+2

Last Sunday of the Month
=================================
=DATE(YEAR(A1),MONTH(A1)+1,7)-WEEKDAY(DATE(YEAR(A1),MONTH(A1)+1,7))-7*(WEEKDAY(DATE(YEAR(A1),MONTH(A1)+1,7))=1)+1

Rick
 
R

Ron Rosenfeld

This isn't a calendar month but more of a complete monthly period beginning
with a Monday and ending with a Sunday.
If the calendar month ends on a Tuesday the period would continue to the end
of the week through Sunday. If the calendar month begins after a Monday the
period would begin with the preceding Monday. Also know as a broadc

I think I have it now.

If I understand you correctly, the beginning of the period is the latest Monday
that is equal to or less the beginning of a Month.

The end of the period is the earliest Sunday that is equal to or greater than
the end of that Month.

With any date in a particular calendar month in A1:

Beginning of Period:

=A1-DAY(A1)+2-WEEKDAY(A1-DAY(A1))

End of Period:

=A1+39-DAY(A1+32)-WEEKDAY(A1+32-DAY(A1+33))

--ron
 
R

Rick Rothstein \(MVP - VB\)

End of Period:
=A1+39-DAY(A1+32)-WEEKDAY(A1+32-DAY(A1+33))

I do not believe this formula works all the time. Unless I am wrong, it
fails for dates like 2/28/2008 through 3/1/2008, 3/29/2008 through 4/1/2008,
4/29/2008 through 5/1/2008, and so on.

Rick
 
R

Ron Rosenfeld

I do not believe this formula works all the time. Unless I am wrong, it
fails for dates like 2/28/2008 through 3/1/2008, 3/29/2008 through 4/1/2008,
4/29/2008 through 5/1/2008, and so on.

Rick

You're correct, and <slap upside the face> I've made that same %$#^&$ mistake
before.

Should be:

=A1-DAY(A1)+39-DAY(A1-DAY(A1)+32)-WEEKDAY(A1-DAY(A1)+39-DAY(A1-DAY(A1)+33))

--ron
 
B

Bob

It works if A1 has the formula date(2008,2,1) and just the month in the
formula changes.

I have link on the date so that the month links to a cell and the user just
adds 1 to the value in the cell.
 
R

Rick Rothstein \(MVP - VB\)

End of Period:
You're correct, and <slap upside the face> I've made that same %$#^&$
mistake
before.

Should be:

=A1-DAY(A1)+39-DAY(A1-DAY(A1)+32)-WEEKDAY(A1-DAY(A1)+39-DAY(A1-DAY(A1)+33))

I think there are still problems with that one too. Try the first of each
month (2/1/2008, 3/1/2008, 4/1/2008, etc.)

Rick
 
R

Rick Rothstein \(MVP - VB\)

Are you sure? I'm pretty sure my original test showed it not returning the
correct date for the first of each month.

Rick
 
R

Ron Rosenfeld

I think there are still problems with that one too. Try the first of each
month (2/1/2008, 3/1/2008, 4/1/2008, etc.)

Rick

I don't see that.

2/1/2008 --> Sunday 3/2/2008, which is the same result as your longer formula
gives.

Given that the OP's definition results in overlapping, I wonder what it is used
for.

--ron
 
R

Rick Rothstein \(MVP - VB\)

End of Period:
I don't see that.

2/1/2008 --> Sunday 3/2/2008, which is the same result as your longer
formula
gives.

Hmm! You are right... they *do* match up. I must have screwed something up
in my initial test bed. Sorry about that.

Rick
 
B

Bob

The first day of the broadcast month does not always correspond with first of
the calendar month.
The first day of the broadcast month always begins with a Monday (regardless
of the what day of the week the 1st is) and the last day of the month always
ends on a Sunday.
TV scheduling is funny that way.
 
R

Ron Rosenfeld

The first day of the broadcast month does not always correspond with first of
the calendar month.
The first day of the broadcast month always begins with a Monday (regardless
of the what day of the week the 1st is) and the last day of the month always
ends on a Sunday.
TV scheduling is funny that way.

Bob,

Your "rules", as I understand them, result in some overlap. How does that get
dealt with in the broadcast world?
--ron
 
B

Bob

the beginning of the month would start as the formula states (first Monday of
a calendar month. The previous month ends the Sunday before that date.

February ended on Sunday, March 2 and March began on Monday, March 3.

March ends on Sunday April 6 and April begins Monday April 7.
 

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