Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/IsDate - Date? - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
IsDate - Date?
RAN Дата: Среда, 04.01.2012, 19:57 | Сообщение № 1
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Приветствую!
С год назад сочинил код, пользую...
А сегодня случайно вломился
При вводе "22.1" или "22,1" получаю "22 января 2012"
А при вводе заведомо для меня неправильного "1,22" или "1.22" - получаю то же - "22 января 2012"
Я не спорю, у них там принято так дату вводить, но у нас - нет. Т.е. дата введена неверно! Скорее всего пытался ввести "12,2" И требуется "12 февраля"
Как сие поправить?

PS Дасс.. Там еще круче.
56,2,4 - тоже правильная дата!

Что? Полностью алгоритм менять?
К сообщению приложен файл: 8249174.xls (39.0 Kb)


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Среда, 04.01.2012, 20:05
 
Ответить
СообщениеПриветствую!
С год назад сочинил код, пользую...
А сегодня случайно вломился
При вводе "22.1" или "22,1" получаю "22 января 2012"
А при вводе заведомо для меня неправильного "1,22" или "1.22" - получаю то же - "22 января 2012"
Я не спорю, у них там принято так дату вводить, но у нас - нет. Т.е. дата введена неверно! Скорее всего пытался ввести "12,2" И требуется "12 февраля"
Как сие поправить?

PS Дасс.. Там еще круче.
56,2,4 - тоже правильная дата!

Что? Полностью алгоритм менять?

Автор - RAN
Дата добавления - 04.01.2012 в 19:57
IgorGo Дата: Среда, 04.01.2012, 21:56 | Сообщение № 2
Группа: Друзья
Ранг: Форумчанин
Сообщений: 108
Репутация: 38 ±
Замечаний: 0% ±

Напишите в заголовке формы Введите дату в формате ДД.ММ.ГГГГ

проверяйте:
if datbox like "*#.*#.*##" then - нормальная дата.

IsDate(ЭТО) - это вопрос для ексель "а ЭТО похоже на дату?" Для ексель ответ очевиден - все перечисленное выше похоже на дату.
 
Ответить
СообщениеНапишите в заголовке формы Введите дату в формате ДД.ММ.ГГГГ

проверяйте:
if datbox like "*#.*#.*##" then - нормальная дата.

IsDate(ЭТО) - это вопрос для ексель "а ЭТО похоже на дату?" Для ексель ответ очевиден - все перечисленное выше похоже на дату.

Автор - IgorGo
Дата добавления - 04.01.2012 в 21:56
RAN Дата: Среда, 04.01.2012, 22:18 | Сообщение № 3
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Quote (IgorGo)
Введите дату в формате ДД.ММ.ГГГГ

Да ее, честно говоря, в другом формате никто и не пытался ввести. (В т.ч. и я при разработке формы). Все неверные даты отрабатываются правильно. А о том, что дату можно ввести и так я даже и не подумал (и соответственно не пробовал).
Поскольку весь этот код представляет из себя "защиту от дурака", хотелось-бы "дурака" блокировать полностью.

А по поводу надписи в заголовке формы, мне это напоминает мой разговор с женой, когда я за рулем:
Ж: Ах, какие там зайки (киски, тапки...)! Тебе понравились?
Я: где?
Ж: Да в рекламе!
Я: в какой?
Ж: Да на щите!
Я: На каком?
(Оказывается мы рекламный щит 6х4м только-что проехали...) biggrin


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение
Quote (IgorGo)
Введите дату в формате ДД.ММ.ГГГГ

Да ее, честно говоря, в другом формате никто и не пытался ввести. (В т.ч. и я при разработке формы). Все неверные даты отрабатываются правильно. А о том, что дату можно ввести и так я даже и не подумал (и соответственно не пробовал).
Поскольку весь этот код представляет из себя "защиту от дурака", хотелось-бы "дурака" блокировать полностью.

А по поводу надписи в заголовке формы, мне это напоминает мой разговор с женой, когда я за рулем:
Ж: Ах, какие там зайки (киски, тапки...)! Тебе понравились?
Я: где?
Ж: Да в рекламе!
Я: в какой?
Ж: Да на щите!
Я: На каком?
(Оказывается мы рекламный щит 6х4м только-что проехали...) biggrin

Автор - RAN
Дата добавления - 04.01.2012 в 22:18
nilem Дата: Четверг, 05.01.2012, 12:44 | Сообщение № 4
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
Варьянт. Задумка в том, что в кач-ве разделителя можно использовать любой одиночный символ. Если забыли записать год, то вставляется текущий год, если год и месяц - текущие год и месяц, и если все позабыли - текущая дата.
Пишем в Текстбокс1, дата отображается Текстбокс2.
К сообщению приложен файл: _8249174_RAN.xls (50.0 Kb)


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеВарьянт. Задумка в том, что в кач-ве разделителя можно использовать любой одиночный символ. Если забыли записать год, то вставляется текущий год, если год и месяц - текущие год и месяц, и если все позабыли - текущая дата.
Пишем в Текстбокс1, дата отображается Текстбокс2.

Автор - nilem
Дата добавления - 05.01.2012 в 12:44
RAN Дата: Четверг, 05.01.2012, 13:32 | Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Пока не глянулось. Попробую что-то из идеи выделить.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеПока не глянулось. Попробую что-то из идеи выделить.

Автор - RAN
Дата добавления - 05.01.2012 в 13:32
nerv Дата: Четверг, 05.01.2012, 14:12 | Сообщение № 6
Группа: Редакторы
Ранг: Обитатель
Сообщений: 431
Репутация: 193 ±
Замечаний: 0% ±

\еще вариант: два разделителя "." и "/". Попробуйте введите: 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]


Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


YM 41001156540584 / WM WMR R21924176233

https://github.com/nervgh/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
[/vba]

Автор - nerv
Дата добавления - 05.01.2012 в 14:12
SM Дата: Четверг, 05.01.2012, 21:47 | Сообщение № 7
Группа: Друзья
Ранг: Участник
Сообщений: 64
Репутация: 59 ±
Замечаний: 0% ±

2003
Ещё:
К сообщению приложен файл: TextIsDate.xls (49.0 Kb)


Excel изощрён, но не злонамерен
 
Ответить
СообщениеЕщё:

Автор - SM
Дата добавления - 05.01.2012 в 21:47
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!