Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi All,
I Need the code that can generate sheets with date of all the working days in a month. Note - Working days are the days between monday and friday. Thanks Thyag |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
here's one way. It will put all week days of the current month in column A.
Sub test() Dim dtStart As Date Dim dtEnd As Date Dim dt As Date Dim l As Long dtStart = DateAdd("d", -Day(Date) + 1, Date) dtEnd = DateAdd("m", 1, dtStart) - 1 dt = dtStart l = 1 While dt <= dtEnd If Application.WorksheetFunction.Weekday(dt, 2) < 6 Then ActiveSheet.Range("A" & l).Value = dt l = l + 1 End If dt = dt + 1 Wend End Sub -- Hope that helps. Vergel Adriano "Thyag" wrote: Hi All, I Need the code that can generate sheets with date of all the working days in a month. Note - Working days are the days between monday and friday. Thanks Thyag |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
On Aug 21, 12:56 pm, Vergel Adriano
wrote: here's one way. It will put all week days of the current month in column A. Sub test() Dim dtStart As Date Dim dtEnd As Date Dim dt As Date Dim l As Long dtStart = DateAdd("d", -Day(Date) + 1, Date) dtEnd = DateAdd("m", 1, dtStart) - 1 dt = dtStart l = 1 While dt <= dtEnd If Application.WorksheetFunction.Weekday(dt, 2) < 6 Then ActiveSheet.Range("A" & l).Value = dt l = l + 1 End If dt = dt + 1 Wend End Sub -- Hope that helps. Vergel Adriano "Thyag" wrote: Hi All, I Need the code that can generate sheets with date of all the working days in a month. Note - Working days are the days between monday and friday. Thanks Thyag- Hide quoted text - - Show quoted text - Hi Vergel Adriano, Well, I really appriciate this. But I need the same dates to appear as the sheet tab names. Is this possible....? Thanks, Thyag |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
On Aug 21, 10:04 am, Thyag wrote:
On Aug 21, 12:56 pm, Vergel Adriano wrote: here's one way. It will put all week days of the current month in column A. Sub test() Dim dtStart As Date Dim dtEnd As Date Dim dt As Date Dim l As Long dtStart = DateAdd("d", -Day(Date) + 1, Date) dtEnd = DateAdd("m", 1, dtStart) - 1 dt = dtStart l = 1 While dt <= dtEnd If Application.WorksheetFunction.Weekday(dt, 2) < 6 Then ActiveSheet.Range("A" & l).Value = dt l = l + 1 End If dt = dt + 1 Wend End Sub -- Hope that helps. Vergel Adriano "Thyag" wrote: Hi All, I Need the code that can generate sheets with date of all the working days in a month. Note - Working days are the days between monday and friday. Thanks Thyag- Hide quoted text - - Show quoted text - Hi Vergel Adriano, Well, I really appriciate this. But I need the same dates to appear as the sheet tab names. Is this possible....? Thanks, Thyag- Hide quoted text - - Show quoted text - Thyag: Try this: Sub test() Dim dtStart As Date Dim dtEnd As Date Dim dt As Date Dim l As Long dtStart = DateAdd("d", -Day(Date) + 1, Date) dtEnd = DateAdd("m", 1, dtStart) - 1 dt = dtStart l = 1 While dt <= dtEnd If Application.WorksheetFunction.Weekday(dt, 2) < 6 Then ActiveWorkbook.Sheets.Add After:=Worksheets(Worksheets.Count) ActiveSheet.Name = Format(dt, "mm-dd-yyyy") l = l + 1 End If dt = dt + 1 Wend End Sub You can change the format of the sheet names as needed. HTH, Jana |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
On Aug 21, 10:31 am, Jana wrote:
On Aug 21, 10:04 am, Thyag wrote: On Aug 21, 12:56 pm, Vergel Adriano wrote: here's one way. It will put all week days of the current month in column A. Sub test() Dim dtStart As Date Dim dtEnd As Date Dim dt As Date Dim l As Long dtStart = DateAdd("d", -Day(Date) + 1, Date) dtEnd = DateAdd("m", 1, dtStart) - 1 dt = dtStart l = 1 While dt <= dtEnd If Application.WorksheetFunction.Weekday(dt, 2) < 6 Then ActiveSheet.Range("A" & l).Value = dt l = l + 1 End If dt = dt + 1 Wend End Sub -- Hope that helps. Vergel Adriano "Thyag" wrote: Hi All, I Need the code that can generate sheets with date of all the working days in a month. Note - Working days are the days between monday and friday. Thanks Thyag- Hide quoted text - - Show quoted text - Hi Vergel Adriano, Well, I really appriciate this. But I need the same dates to appear as the sheet tab names. Is this possible....? Thanks, Thyag- Hide quoted text - - Show quoted text - Thyag: Try this: Sub test() Dim dtStart As Date Dim dtEnd As Date Dim dt As Date Dim l As Long dtStart = DateAdd("d", -Day(Date) + 1, Date) dtEnd = DateAdd("m", 1, dtStart) - 1 dt = dtStart l = 1 While dt <= dtEnd If Application.WorksheetFunction.Weekday(dt, 2) < 6 Then ActiveWorkbook.Sheets.Add After:=Worksheets(Worksheets.Count) ActiveSheet.Name = Format(dt, "mm-dd-yyyy") l = l + 1 End If dt = dt + 1 Wend End Sub You can change the format of the sheet names as needed. HTH, Jana- Hide quoted text - - Show quoted text - Please note that the line beginning with After:= wrapped to the next line in my post. Jana |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
On Aug 21, 1:34 pm, Jana wrote:
On Aug 21, 10:31 am, Jana wrote: On Aug 21, 10:04 am, Thyag wrote: On Aug 21, 12:56 pm, Vergel Adriano wrote: here's one way. It will put all week days of the current month in column A. Sub test() Dim dtStart As Date Dim dtEnd As Date Dim dt As Date Dim l As Long dtStart = DateAdd("d", -Day(Date) + 1, Date) dtEnd = DateAdd("m", 1, dtStart) - 1 dt = dtStart l = 1 While dt <= dtEnd If Application.WorksheetFunction.Weekday(dt, 2) < 6 Then ActiveSheet.Range("A" & l).Value = dt l = l + 1 End If dt = dt + 1 Wend End Sub -- Hope that helps. Vergel Adriano "Thyag" wrote: Hi All, I Need the code that can generate sheets with date of all the working days in a month. Note - Working days are the days between monday and friday. Thanks Thyag- Hide quoted text - - Show quoted text - Hi Vergel Adriano, Well, I really appriciate this. But I need the same dates to appear as the sheet tab names. Is this possible....? Thanks, Thyag- Hide quoted text - - Show quoted text - Thyag: Try this: Sub test() Dim dtStart As Date Dim dtEnd As Date Dim dt As Date Dim l As Long dtStart = DateAdd("d", -Day(Date) + 1, Date) dtEnd = DateAdd("m", 1, dtStart) - 1 dt = dtStart l = 1 While dt <= dtEnd If Application.WorksheetFunction.Weekday(dt, 2) < 6 Then ActiveWorkbook.Sheets.Add After:=Worksheets(Worksheets.Count) ActiveSheet.Name = Format(dt, "mm-dd-yyyy") l = l + 1 End If dt = dt + 1 Wend End Sub You can change the format of the sheet names as needed. HTH, Jana- Hide quoted text - - Show quoted text - Please note that the line beginning with After:= wrapped to the next line in my post. Jana- Hide quoted text - - Show quoted text - This is really wonder ful. I just want a small modification for this. Can I generate the same sheets for any specified month. Thanks, Thyag. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Calculate working days but change working week | Excel Discussion (Misc queries) | |||
Making weekend days working days - the system cuts the working tim | Excel Discussion (Misc queries) | |||
How to calculation no. of days (only working days) between two dat | Excel Discussion (Misc queries) | |||
Is there away to keep "auto save" from jumping to the first work sheet in the work book? | New Users to Excel | |||
simultaneously work in a work book with other users | Excel Discussion (Misc queries) |