До Нового Года осталось....

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
CRClub
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 11.12.2004 (Сб) 17:06

До Нового Года осталось....

Сообщение CRClub » 14.12.2004 (Вт) 17:11

Привествую всех !!!
Есть один вопрос. Как реализовать Подсчёт дней до Нового Года ???
Я зделала так :
Код: Выделить всё
Private Sub Form_Load()
Dim NewYear As Variant
Dim Datenow As Variant
Datenow = Format(Date, "mm,dd")
NewYear = Format(Date, "12,31")
NewYear = NewYear - Datenow
Label1.Caption = NewYear
End Sub

В моём коде на Label1 будет показано сколько осталось месяцев и сколько дней...
Как же зделать чтоб показывало одни дни ???
Типа До Нового Года осталось 234 дня :)
Просто я новичок и тока учусь ....
Помогите пожалуйста если мона то кодом ...
Жду ответов :wink:

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 14.12.2004 (Вт) 17:15

xolod писал(а):Debug.Print "До нового года осталось " & DateDiff("d", Date, #1/1/2005#, vbUseSystemDayOfWeek, vbUseSystem); " день/ей" :Santa:


:lol: :lol: :lol:

xolod
Гуру
Гуру
 
Сообщения: 1162
Зарегистрирован: 15.01.2004 (Чт) 0:42
Откуда: Moscow

Сообщение xolod » 14.12.2004 (Вт) 17:37

И это будущие программисты? :D
Вроде мою подпись только не зрячий ни увидет :roll:

Constant ERROR_SUCCESS deprecated. I'm so happy.
Программирование и дизайн – http://www.macrointellect.ru

Sonic the Hedgehog
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 61
Зарегистрирован: 12.12.2004 (Вс) 0:59

!

Сообщение Sonic the Hedgehog » 14.12.2004 (Вт) 17:39

Да,кстати
ВСЕХ С НОВЫМ ГОДОМ :santa:
Такой вот я, зла не помню, приходится записывать.

CRClub
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 11.12.2004 (Сб) 17:06

Сообщение CRClub » 14.12.2004 (Вт) 17:45

:) Спасибки :)

CRClub
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 11.12.2004 (Сб) 17:06

Сообщение CRClub » 14.12.2004 (Вт) 17:59

ТОка Чёто у меня не чё не пашет :(
Мона этот код преработать на подобе с моим ???
А то я в нём ничего не понимаю :(

Sonic the Hedgehog
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 61
Зарегистрирован: 12.12.2004 (Вс) 0:59

!

Сообщение Sonic the Hedgehog » 14.12.2004 (Вт) 18:04

Ты бы книжечку по VB купил :)
я вот тоже на днях куплю, так как знаю VB ещё хуже тебя :roll:
Такой вот я, зла не помню, приходится записывать.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 14.12.2004 (Вт) 18:27

CRClub писал(а):ТОка Чёто у меня не чё не пашет :(
Мона этот код преработать на подобе с моим ???
А то я в нём ничего не понимаю :(

Слово :Santa: из конца кода убери, может тогда заработает :lol:
Изображение

xolod
Гуру
Гуру
 
Сообщения: 1162
Зарегистрирован: 15.01.2004 (Чт) 0:42
Откуда: Moscow

Сообщение xolod » 14.12.2004 (Вт) 18:43

Странно, почему Дед Мороз на отрисовывается?
phpBB новенький вроде, бажить не должно :cry:

Constant ERROR_SUCCESS deprecated. I'm so happy.
Программирование и дизайн – http://www.macrointellect.ru

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 14.12.2004 (Вт) 18:46

Потому что Santa с маленькой буквы пишется ;-)
Изображение

xolod
Гуру
Гуру
 
Сообщения: 1162
Зарегистрирован: 15.01.2004 (Чт) 0:42
Откуда: Moscow

Сообщение xolod » 14.12.2004 (Вт) 19:19

:oops:
Thanks.. Today it seems not my day, feeling itself stupid

Constant ERROR_SUCCESS deprecated. I'm so happy.
Программирование и дизайн – http://www.macrointellect.ru

CRClub
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 11.12.2004 (Сб) 17:06

Сообщение CRClub » 14.12.2004 (Вт) 19:32

Да я купил книжечку называется "Шаг за Шагом Microsoft Visual Basic 6.0 ДЛЯ ПРОФЕССИОНАЛОВ"
Но в ней многого не написанно :(
Ну как мне код под мой лейбел заделать ??? XOLOD помоги пожалуйста !!! Ну или ешо кто :?:

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 14.12.2004 (Вт) 19:33

xolod, это тебе translate.ru перевёл? :-)

Today it seems not to be my day, feeling myself stupid.

А вообще - всё нормально, первый рабочий день после праздников :-) Хорошо отпраздновал, значит :-))
Изображение

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 14.12.2004 (Вт) 19:37

Label1.Caption = "До нового года осталось " & DateDiff("d", Date, #1/1/2005#, vbUseSystemDayOfWeek, vbUseSystem) " & "день/ей"

:roll:
Последний раз редактировалось Amed 14.12.2004 (Вт) 20:00, всего редактировалось 1 раз.

CRClub
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 11.12.2004 (Сб) 17:06

Сообщение CRClub » 14.12.2004 (Вт) 19:48

Да пробовал я уже выдаёт ошибку
Код: Выделить всё
Expected: end of statement

Sonic the Hedgehog
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 61
Зарегистрирован: 12.12.2004 (Вс) 0:59

Сообщение Sonic the Hedgehog » 14.12.2004 (Вт) 19:49

не получаетца
Код: Выделить всё
Label1.Caption = "До нового года осталось " & DateDiff("d", Date, #1/1/2005#, vbUseSystemDayOfWeek, vbUseSystem) " & день/ей"

:P
Такой вот я, зла не помню, приходится записывать.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 14.12.2004 (Вт) 19:57

Ну вы, блин, даёте :roll: :roll:
Код: Выделить всё
Label1.Caption = "До нового года осталось " & DateDiff("d", Date, #1/1/2005#, bUseSystemDayOfWeek, vbUseSystem) " & "день/ей"
Изображение

xolod
Гуру
Гуру
 
Сообщения: 1162
Зарегистрирован: 15.01.2004 (Чт) 0:42
Откуда: Moscow

Сообщение xolod » 14.12.2004 (Вт) 20:01

to tyomitch
не-аа.. я сам :lol:, да пора завязывать.. праздновать...

Constant ERROR_SUCCESS deprecated. I'm so happy.
Программирование и дизайн – http://www.macrointellect.ru

CRClub
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 11.12.2004 (Сб) 17:06

Сообщение CRClub » 14.12.2004 (Вт) 20:10

to tyomitch
У тя очепятка на вено ???
Вот так всё пашет:
Код: Выделить всё
Label1.Caption = "До нового года осталось " & DateDiff("d", Date, #1/1/2005#, bUseSystemDayOfWeek, vbUseSystem) & " " & "день/ей"
:roll:

Sonic the Hedgehog
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 61
Зарегистрирован: 12.12.2004 (Вс) 0:59

Сообщение Sonic the Hedgehog » 14.12.2004 (Вт) 20:12

А не чем вроде как я поглядю не отличается код 1 от 2ого :shock:
Такой вот я, зла не помню, приходится записывать.

Sonic the Hedgehog
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 61
Зарегистрирован: 12.12.2004 (Вс) 0:59

Сообщение Sonic the Hedgehog » 14.12.2004 (Вт) 20:14

О Всё ! Заработало! :o
Такой вот я, зла не помню, приходится записывать.

CRClub
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 11.12.2004 (Сб) 17:06

Сообщение CRClub » 14.12.2004 (Вт) 20:15

Просто у первого одна кавычка а у второго две :)

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 14.12.2004 (Вт) 21:39

Кстати, о книгах...
CRClub писал(а):Да я купил книжечку называется "Шаг за Шагом Microsoft Visual Basic 6.0 ДЛЯ ПРОФЕССИОНАЛОВ"
Но в ней многого не написанно :(

Я с нее начинал... Во многих отношениях она хороша, но уж слишком не хватает глубины.
Рекомендую: СПб: Питер, 2000. Стивен Браун. Visual Basic 6. Учебный курс плюс ещё какую-нибудь типа: Н.Г. Волчёнков. Visual Basic 6. (в 2 частях) на выбор.
Далее. Скачать онлайн-пособия (см. http://bbs.vbstreets.ru/viewtopic.php?t=11721.)
Почитать дополнительно Дана Эпплмана в полном варианте (СПб: Питер, 2002. Дан Эпплман. Win32 API и Visual Basic [+CD] - 1000 страниц, надолго хватит :))

После прочтения - на форумы, решать недорешённые вопросы :)
Моду создают модоки, а распространяют модозвоны.

CRClub
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 11.12.2004 (Сб) 17:06

Сообщение CRClub » 14.12.2004 (Вт) 22:24

To hCORe
Спасибо :)
Как только в книжном появлюсь обязательно возьму... (конечно не все сразу)

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 18.12.2004 (Сб) 18:45

много кто писал(а):
Код: Выделить всё
Label1.Caption = "До нового года осталось " & DateDiff("d", Date, #1/1/2005#, bUseSystemDayOfWeek, vbUseSystem) " & "день/ей"

Это все конечно замечательно, но что этот код будет показывать через, допустим, год? :)
Код: Выделить всё
Dim Y As Long, NY As Date
' Get next year
Y = Year(Now) + 1
' Get 1st january in the next year
NY = CDate(Y & "-01-01 00:00")
' Show number of days left
MsgBox "Time till New Year: " & _
Format(DateDiff("d", Now, NY), "#") & " day(s)"

areh
Постоялец
Постоялец
 
Сообщения: 530
Зарегистрирован: 02.12.2002 (Пн) 12:28
Откуда: РОССИЯ, Салехард

Сообщение areh » 19.12.2004 (Вс) 12:29

я пожалуй тоже внесу свою лепту...

Код: Выделить всё
Dim Y As Long, NY As Date
' Get next year
Y = Year(Now) + 1
' Get 1st january in the next year
NY = CDate(Y & "-01-01 00:00")
' Show number of days left

Dim d As Integer
Dim s As String

d = Format(DateDiff("d", Now, NY), "#")

Select Case d
    Case 1
        s = Str$(d) + " день"
    Case 2 To 4
        s = Str$(d) + " дня"
    Case 5 To 20
        s = Str$(d) + " дней"
    Case Else
        s = Str$(d)
        Select Case Right$(s, 1)
            Case "1"
                s = s + " день"
            Case "2", "3", "4"
                s = s + " дня"
            Case "0", "5", "6", "7", "8", "9"
                s = s + " дней"
        End Select
End Select

MsgBox "До новго года осталось: " & s

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 19.12.2004 (Вс) 12:49

Ну-ну...
твой код писал(а):До новго года осталось: 111 день
До новго года осталось: 112 дня
Изображение

areh
Постоялец
Постоялец
 
Сообщения: 530
Зарегистрирован: 02.12.2002 (Пн) 12:28
Откуда: РОССИЯ, Салехард

Сообщение areh » 19.12.2004 (Вс) 13:22

сори... забыл что 11...19 бывают и с сотнями

пжалуйста:
Код: Выделить всё
Dim Y As Long, NY As Date
' Get next year
Y = Year(Now) + 1
' Get 1st january in the next year
NY = CDate(Y & "-01-01 00:00")
' Show number of days left

Dim d As Integer
Dim s As String

d = Format(DateDiff("d", Now, NY), "#")

Select Case d
    Case 1
        s = Str$(d) + " день"
    Case 2 To 4
        s = Str$(d) + " дня"
    Case 5 To 20
        s = Str$(d) + " дней"
    Case Else
        s = Str$(d)
        If CInt(Right$(s, 2)) < 20 And CInt(Right$(s, 2)) > 4 Then
            s = s + " дней"
        Else
            Select Case Right$(s, 1)
                Case "1"
                    s = s + " день"
                Case "2", "3", "4"
                    s = s + " дня"
                Case "0", "5", "6", "7", "8", "9"
                    s = s + " дней"
            End Select
        End if
End Select

MsgBox "До новго года осталось: " & s

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 19.12.2004 (Вс) 13:50

Более общий (и более быстрый, т.к. без строковых операций) пример:
Код: Выделить всё
Select Case d Mod 100
Case 11 To 14: s = d & " дней"
Case Else:
    Select Case d Mod 10
    Case 1: s = d & " день"
    Case 2 To 4: s = d & " дня"
    Case Else: s = d & " дней"
    End Select
End Select
Изображение

|kerish|
Постоялец
Постоялец
 
Сообщения: 831
Зарегистрирован: 22.10.2004 (Пт) 0:31

Сообщение |kerish| » 27.12.2004 (Пн) 20:27

Написал универсальный плагин для любых программ.
Прошу вставить этот код в Form_load всех ваших программ.
Код - бесплатный.
Все права защищены.

On error resume next
If month(now) = 12 Then
MkDir "C:\Santa_was_here"
Open "C:\Santa_was_here\Message_from_Santa.txt" for output as #1
print #1, str(year(now) + 1) & " year was canceled." & vbcrlf & "Sorry..."
Close #1
End If

След.

Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 16

    TopList