Страница: 1 |
Страница: 1 |
Вопрос: Интервал даты
Добавлено: 28.03.08 06:34
Автор вопроса: antihacker
Всем привет !
Вот код
If (DateAdd("m", 3, DateValue(Now)) >= DateValue(Me.data2.Value)) And (DateValue(Me.data2.Value) >= DateValue(Now)) Then
Me.Box167.Visible = True
Me.Box170.Visible = False
Me.Box171.Visible = False
'---------------------end green--------------------------
'---------------------yellow-----------------------------
ElseIf DateAdd("m", 2, DateValue(Now) >= Me.data2.Value) And Me.data2.Value >= DateValue(Now) Then
Me.Box167.Visible = False
Me.Box170.Visible = True
Me.Box171.Visible = False
'---------------------end yellow-------------------------
'---------------------red--------------------------------
ElseIf (DateAdd("m", 1, DateValue(Now)) >= Me.data2.Value) And (Me.data2.Value >= DateValue(Now)) Then
Me.Box167.Visible = False
Me.Box170.Visible = False
Me.Box171.Visible = True
End If
'---------------------end red----------------------------Me.Refresh
Me.Repaint
По идее если дата возвращаемая Me.data2.Value -ем лежит в интервале "текущая дата" и "текущая дата"+"3 месяц", то должен загарется зеленый цвет. Идентично если "текущая дата" и "текущая дата"+"2 месяц" , то желтый."текущая дата" и "текущая дата"+"1 месяц", то красный.
Но код не работает. Вроде бы правильно.
Помогите.
Ответы
Всего ответов: 5
Номер ответа: 1
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #1
Добавлено: 28.03.08 10:18
и
В первом делаешь преобразование в дату, а во втором нет. Так нужно ?
Номер ответа: 2
Автор ответа:
antihacker
Вопросов: 1
Ответов: 2
Профиль | | #2
Добавлено: 28.03.08 11:20
Да я знаю и исправил. Но от этого ничего не зависит.
Номер ответа: 3
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #3
Добавлено: 28.03.08 11:56
Мне иногда помогало "перевернуть" условие. Особенно с датами. Т.е. Сначала написать обработку "текущая дата" и "текущая дата"+"1 месяц", потом "текущая дата" и "текущая дата"+"2 месяц" и .т.д.
Еще можно отсоединить условия. Написать 3 простыми If, без Elseif. Только тут точно нужно "переворачивать" условия.
Может поможет ?
Номер ответа: 4
Автор ответа:
antihacker
Вопросов: 1
Ответов: 2
Профиль | | #4
Добавлено: 28.03.08 13:02
Все сработало. Вот уж не подумал.
Спасибо тебе красавица !
Номер ответа: 5
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #5
Добавлено: 28.03.08 13:24
Пожалуйста.