Приветствую! С год назад сочинил код, пользую... А сегодня случайно вломился При вводе "22.1" или "22,1" получаю "22 января 2012" А при вводе заведомо для меня неправильного "1,22" или "1.22" - получаю то же - "22 января 2012" Я не спорю, у них там принято так дату вводить, но у нас - нет. Т.е. дата введена неверно! Скорее всего пытался ввести "12,2" И требуется "12 февраля" Как сие поправить?
PS Дасс.. Там еще круче. 56,2,4 - тоже правильная дата!
Что? Полностью алгоритм менять?
Приветствую! С год назад сочинил код, пользую... А сегодня случайно вломился При вводе "22.1" или "22,1" получаю "22 января 2012" А при вводе заведомо для меня неправильного "1,22" или "1.22" - получаю то же - "22 января 2012" Я не спорю, у них там принято так дату вводить, но у нас - нет. Т.е. дата введена неверно! Скорее всего пытался ввести "12,2" И требуется "12 февраля" Как сие поправить?
PS Дасс.. Там еще круче. 56,2,4 - тоже правильная дата!
Да ее, честно говоря, в другом формате никто и не пытался ввести. (В т.ч. и я при разработке формы). Все неверные даты отрабатываются правильно. А о том, что дату можно ввести и так я даже и не подумал (и соответственно не пробовал). Поскольку весь этот код представляет из себя "защиту от дурака", хотелось-бы "дурака" блокировать полностью.
А по поводу надписи в заголовке формы, мне это напоминает мой разговор с женой, когда я за рулем: Ж: Ах, какие там зайки (киски, тапки...)! Тебе понравились? Я: где? Ж: Да в рекламе! Я: в какой? Ж: Да на щите! Я: На каком? (Оказывается мы рекламный щит 6х4м только-что проехали...)
Quote (IgorGo)
Введите дату в формате ДД.ММ.ГГГГ
Да ее, честно говоря, в другом формате никто и не пытался ввести. (В т.ч. и я при разработке формы). Все неверные даты отрабатываются правильно. А о том, что дату можно ввести и так я даже и не подумал (и соответственно не пробовал). Поскольку весь этот код представляет из себя "защиту от дурака", хотелось-бы "дурака" блокировать полностью.
А по поводу надписи в заголовке формы, мне это напоминает мой разговор с женой, когда я за рулем: Ж: Ах, какие там зайки (киски, тапки...)! Тебе понравились? Я: где? Ж: Да в рекламе! Я: в какой? Ж: Да на щите! Я: На каком? (Оказывается мы рекламный щит 6х4м только-что проехали...) RAN
Варьянт. Задумка в том, что в кач-ве разделителя можно использовать любой одиночный символ. Если забыли записать год, то вставляется текущий год, если год и месяц - текущие год и месяц, и если все позабыли - текущая дата. Пишем в Текстбокс1, дата отображается Текстбокс2.
Варьянт. Задумка в том, что в кач-ве разделителя можно использовать любой одиночный символ. Если забыли записать год, то вставляется текущий год, если год и месяц - текущие год и месяц, и если все позабыли - текущая дата. Пишем в Текстбокс1, дата отображается Текстбокс2.nilem
\еще вариант: два разделителя "." и "/". Попробуйте введите: 29.02.2011, 12.12 и т.п.
[vba]
Code
Sub io() Dim x, z$ On Error GoTo L1 z = InputBox("Enter date", "Header", Date) 'date x = Split(z, IIf(InStr(z, "/"), "/", ".")) If IsDate(z) Then If UBound(x) = 2 Then MsgBox True End If L1: End Sub
[/vba]
\еще вариант: два разделителя "." и "/". Попробуйте введите: 29.02.2011, 12.12 и т.п.
[vba]
Code
Sub io() Dim x, z$ On Error GoTo L1 z = InputBox("Enter date", "Header", Date) 'date x = Split(z, IIf(InStr(z, "/"), "/", ".")) If IsDate(z) Then If UBound(x) = 2 Then MsgBox True End If L1: End Sub