|
|
|
Как по-проще по номеру недели определить дату ее начала и окончания?
|
|||
|---|---|---|---|
|
#18+
Собственно, весь вопрос. Подскажите, пожалуйста, а то у самого какой-то огород получается ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2004, 12:10 |
|
||
|
Как по-проще по номеру недели определить дату ее начала и окончания?
|
|||
|---|---|---|---|
|
#18+
Не самый красивый вариант, но вроде работающий: CDate(DateSerial(год,1,1)+7*неделя-10) CDate(DateSerial(год,1,1)+7*неделя-4) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2004, 12:18 |
|
||
|
Как по-проще по номеру недели определить дату ее начала и окончания?
|
|||
|---|---|---|---|
|
#18+
Владимир Саныч, спасибо, работает. Но тут нужно обработать ситуации для первой и последней недели года, так чтобы не залезть, соответственно на предыдущий или следующий год. Что-то мне подсказывает, что можно получить нужные даты сразу, без проверки этих двух исключений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2004, 12:30 |
|
||
|
Как по-проще по номеру недели определить дату ее начала и окончания?
|
|||
|---|---|---|---|
|
#18+
date - weekday(date) +1 date-weekday(date) +7 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2004, 12:57 |
|
||
|
Как по-проще по номеру недели определить дату ее начала и окончания?
|
|||
|---|---|---|---|
|
#18+
Пока сделал так, взяв за основу вариант Владимир Саныча, и ввел проверки о которых говорил выше. Может кому пригодится: Dim WeekStart As Date 'Дата начала недели Dim WeekEnd As Date 'Дата окончания недели Sub WeekStartEnd(N As Long) 'N - порядковый номер недели в году WeekStart = CDate(DateSerial(Year(Date), 1, 1) + 7 * N - 10) If Year(WeekStart) < Year(Date) Then WeekEnd = WeekStart + 6 + #11:59:59 PM# WeekStart = DateSerial(Year(Date), 1, 1) Else If Year(WeekStart + 6) > Year(Date) Then WeekEnd = DateSerial(Year(Date), 12, 31) + #11:59:59 PM# Else WeekEnd = WeekStart + 6 + #11:59:59 PM# End If End If End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2004, 13:15 |
|
||
|
Как по-проще по номеру недели определить дату ее начала и окончания?
|
|||
|---|---|---|---|
|
#18+
Несколько экстравагантный способ :), но может быть кому-нибуть пригодится. Код: plaintext 1. 2. 3. 4. 5. Где Nums - вспомогательная таблица с числами от 0 до 9 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2004, 13:09 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32387675&tid=1677005]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
201ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 223ms |
| total: | 494ms |

| 0 / 0 |
