Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Числа всех понедельников в году / 5 сообщений из 5, страница 1 из 1
26.02.2005, 11:47:52
    #32934796
Namik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Числа всех понедельников в году
Доброго Вам времени суток
Уважаемые господа


при наличии времени прошу Вас помочь

как мне получить
числа всех понедельников в году

т.е. мне необхадимо

числа всех понедельников в январе месяце, далее в феврале и т.д. до декабря

но нужный мне год, я буду указывать сам

С Уважением и благодарностью Намик
...
Рейтинг: 0 / 0
27.02.2005, 09:11:13
    #32935281
Числа всех понедельников в году
Создаешь 1ое января через DateSerial(yyyy, 1,1), затем цикл — проверяешь день недели через Weekday, если это понедельник то выписываешь куда тебе надо, затем добавляешь один день, если год сменился то выходим из цикла.
Короче говоря, примерно так (не тестировал):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Dim dt as Date
dt = DateSerial(MyYear,  1 ,  1 )
Do
    If Weekday(dt) =  2  Then
        Debug.Print FormatDateTime(dt, vbShortDate)
    End If
    dt = DateAdd("d",  1 , dt)
Loop Until Year(dt) <> MyYear
...
Рейтинг: 0 / 0
28.02.2005, 13:01:24
    #32936272
Namik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Числа всех понедельников в году
огромное Вам спасибо
все работает как надо

простите

при наличии времени
может подскажите

Ваш код работает с настройками английскими
и поэтому 2 = понедельник

как проверить какая настройка
и дать ей свою
чтобы понедельник был 1

С Уважением и Благодарностью
Намик
...
Рейтинг: 0 / 0
01.03.2005, 13:40:56
    #32938616
Alexey Kudinov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Числа всех понедельников в году
Namik
как проверить какая настройка
и дать ей свою
чтобы понедельник был 1
2-й параметр метода Weekday
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Private Sub Command1_Click()
    Dim dt As Date
    dt = DateSerial("2005",  1 ,  1 )
    Do
        If Weekday(dt, vbMonday) =  1  Then
            Debug.Print FormatDateTime(dt, vbShortDate)
        End If
        dt = DateAdd("d",  1 , dt)
    Loop Until Year(dt) <> "2005"

End Sub
...
Рейтинг: 0 / 0
01.03.2005, 17:05:29
    #32939364
Namik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Числа всех понедельников в году
Никита
Алексей

большое Вам спасибо

С Уважением и Благодарностью
Намик
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Числа всех понедельников в году / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]