Здравствуйте. В xl хоть и "бот". но небольшой код уже написал. Возникла проблема 31 февраля. Забить данную дату можно и xl ее успешно воспринимает и записывает. *Пример, 31 Февраль 12 = 12.02.1931 как победить не знаю =( Все бы ничего просто работать с этим будут бабульки и дуракоустойчивость должна быть высокая. В форме уже сделано так чтобы в определенных полях можно забивать Фамилия = только русский текст Имя = только русский текст Отчество = только русский текст День = только цифры от 0 до 9 Год = только цифры от 0 до 9 Добился того чтобы можно было переключаться TAB или Enter Потом буду доделывать форму дальше и если есть интерес опишу как что я сделал.
Сейчас прошу помощи в решении проблемы 31 февраля!!!!
Для отладки формы чтобы можно было переключаться TAB, Enter необходимо левой кнопкой мыши щелкнуть на нужный элемент в форме и в свойствах (Properties) (лево низ) на вкладке Alphabetic найти TabIndex и поставить нужны порядковый номер при прощелкивании табом или энтером нучиная с нуля (0,1,2,3...)
Размещение формы на экране (слева, справа, в центре и т.д.) на вкладке Alphabetic найти StartUpPosition, где 2 - центр экрана.
Самое невероятное - ФОРМУ МОЖНО СВЕРНУТЬ (UserForm1.Hide)
TextBox 1) Следует помнить, что в TextBox ВСЕГДА текст. Там не может быть ни даты, ни чисел!!! Проблема: Проще говоря если вы сделаете модель
Код
.Offset(TRows, 2).Value = TextBox1
где TextBox1 = "1" то в в столбец вставится числа как "1",то в формате текста и произвести математические действия не получится. Лечение: 1) самое простое (но не правильное) используя динамическую/умную таблицу в соседнем столбике прописать формулу =--A2 2) очень простое и правильное решение .Offset(TRows, 2).Value =Val(TextBox2) для чисел .Offset(TRows, 3).Value = CDate(TextBox3) для дат
Изменено: Kor - 02.02.2018 23:00:27(дополнения по функциям)
А ещё в выпадающем списке с месяцем можно написать что угодно
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок. А в том, чтобы писать программы, работающие при любом количестве ошибок.
Не понятно, где? Ввожу в поле месяц "ручками" любую абракадабру - "на ура"
Вам нужно разобраться со свойствами ComboBox- ов. Смотрите в примере, изменил настройки combobox1,макрос на его события и добавил новое имя на лист Настройки. К сожалению больше не могу писать, некогда. Все, Удачи
Комментарии пользователей напоминают анекдот, Ночь. пьяный мужик ползает под единственным фонарем на улице и что-то ищет. к нему подходит другой мужик и спрашивает: - что ищешь? - Да вот на бутылку деньги потерял. - а где потерял? -А вон у того забора -А почему у фонаря ищешь? - так здесь светлее
Так вот. Проблема вполне конкретная и мне про то что можно дописать что-то в выпадающем списке говорить не надо.Как сделать так чтобы при попытки сохранить данные 31,30 и когда нет 29 числа в месяце появлялась предупреждение о попытки вбить неверную дату?[/SIZE][/CENTER][/FONT][/B]
Kor написал: Для таких же неучей, как и я прикладываю ссылки
Так почему же Вы запрещаете другим помогать таким же неучам? Не нравится подсказка - "спасибо, но мне бы по основному вопросу...", а не анекдоты расписывать. Толковые советы могут помочь другим. Вы своей реакцией отталкиваете от себя помогающих.
Kor написал: Комментарии пользователей напоминают анекдот
Не анекдот:
Цитата
Kor написал: чтобы можно было переключаться TAB, Enter необходимо левой кнопкой мыши щелкнуть на нужный элемент в форме и в свойствах (Properties) (лево низ) на вкладке Alphabetic найти TabIndex и поставить нужны порядковый номер
Есть способ гораздо проще: правый клик по форме - Tab Order и перемещайте контролы вверх/вниз для перехода в нужной последовательности. А с Вашим способом может возникнуть коллизия, потребующая дополнительных телодвижений.
Цитата
Kor написал: прошу помощи в решении проблемы 31 февраля
Может быть (как вариант) использовать календарь? Тогда проблема сразу будет решена.
Цитата
Kor написал: Самое невероятное - ФОРМУ МОЖНО СВЕРНУТЬ (UserForm1.Hide)
А мы и не знали )) Правда, это не свернуть называется, а скрыть.
Я могу Вам подарить календарь. Правда, чужой, но собран на стандартных элементах и будет работать в любой версии )) Сможете интегрировать в свою форму?
Юрий, благодарю Вас за помощь. Лично мне уже не надо. благодаря IsDate(TextBox1) и автоматическому заполнеиню ячейки при нажатии я решил проблему. думаю людям это понадобится. Сейчасведу разработку форму регистрации входящих писем. Позднее выложу. Думаю, что тем кто ищет полезную информацию всегда будет приятно получить помощь (надеюсь, что такая помощь не окажется медвежей).