Первый день текущего месяца
Me!FirstDay = DateSerial(Year(Now()), Month(Now()), 1)
Последний день текущего месяца
Me!LastDay = DateSerial(Year(Now()), Month(Now()) + 1, 0)
Определение дат начала и конца прошедшей недели
Me!FirstDayOfWeek = Now() - WeekDay(Now(), _ vbUseSystemDayOfWeek) - 6 Me!LastDayOfWeek = Now() - WeekDay(Now(), _ vbUseSystemDayOfWeek)
Процедура для подсчета рабочих дней между двумя датами, но она не учитывает праздничные дни:
Sub SkipWeekend()
Dim DayOfMonth As Date, Counter As Integer
Counter = Me!EndDay + 1 - Me!StartDay DayOfMonth = Me!StartDay
Do While DayOfMonth <= Me!EndDay
Select Case WeekDay(DayOfMonth)
Case vbSaturday, vbSunday Counter = Counter - 1
End Select DayOfMonth = DayOfMonth + 1
Loop Me!CountOfDay = Counter
End Sub
Ссылки по теме