Страница: 1 | 2 |
Вопрос: Сравнение данных
Добавлено: 17.03.09 21:01
Автор вопроса: Владимир | Web-сайт:
Здравствуйте помогите, если не затруднит мне данно 9 числовых окон для ввода (пример Val(Text.Text)), как сделать так что бы программа прежде чем переходить на другую форму(эти данные я ввожу в кнопку далее) проверяла эти действия (приведенные ниже) и выводила ошибки не через Label1.а через MsgBox и пока не введешь правильно данные что бы не переходила на другую форму. Заранее благодарен!!!
Private Sub Command4_Click()
If Val(Text1.Text) < 0 Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text2.Text) < 0 Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text3.Text) < 0 Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text4.Text) < 0 Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text5.Text) < 0 Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text6.Text) < 0 Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text7.Text) < 0 Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text8.Text) < 0 Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text9.Text) < 0 Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text1.Text) < Val(Text2.Text) Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text2.Text) < Val(Text3.Text) Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text5.Text) < Val(Text4.Text) Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text6.Text) < Val(Text5.Text) Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text7.Text) < Val(Text8.Text) Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
If Val(Text8.Text) < Val(Text9.Text) Then Label15 = "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!" Else
Form2.Hide
Form4.Show
End Sub
Ответы
Всего ответов: 17
Номер ответа: 1
Автор ответа:
fAndOrIn
Вопросов: 5
Ответов: 344
Профиль | | #1
Добавлено: 17.03.09 21:49
If Val(Text1.Text) < 0 Then msgbox "Вы ошиблись при вводе данных.ПРОВЕРЬТЕ ЕЩЕ РАЗ!!!": exit sub
'и т.д.
Form2.Hide
Form4.Show
End Sub
Номер ответа: 2
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #2
Добавлено: 17.03.09 22:46
Может текстовые поля сделать массивом текстбоксов? Тогда будет смотреться красивее.
Номер ответа: 3
Автор ответа:
Владимир
Вопросов: 2
Ответов: 8
Web-сайт:
Профиль | | #3
Добавлено: 18.03.09 08:56
Спасибо!Отличный сайт!!!Быстрая помощь и в нужном направлении без всякой воды!!!!!
Номер ответа: 4
Автор ответа:
Владимир
Вопросов: 2
Ответов: 8
Web-сайт:
Профиль | | #4
Добавлено: 18.03.09 08:57
А что придадут эти массивы с текстбоксами???
Номер ответа: 5
Автор ответа:
Владимир
Вопросов: 2
Ответов: 8
Web-сайт:
Профиль | | #5
Добавлено: 18.03.09 09:00
У меня просто последующие формы связаны с этими текстами куда вводятся данные,если сделать эти массивы как вы говорите что бы было красивее это не повлияет на те расчеты с которыми связаны эти текста для ввода???
Номер ответа: 6
Автор ответа:
Arseny
ICQ: 298826769
Вопросов: 53
Ответов: 1732
Профиль | | #6
Добавлено: 18.03.09 09:30
Спасибо!Отличный сайт!!!Быстрая помощь и в нужном направлении без всякой воды!!!!!
ыыы... тебе просто повезло...
Может текстовые поля сделать массивом текстбоксов? Тогда будет смотреться красивее.
в вба вроде не сделать массив контролов...
Номер ответа: 7
Автор ответа:
Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #7
Добавлено: 18.03.09 14:54
Вот тебе типичный варварский код )
Номер ответа: 8
Автор ответа:
fAndOrIn
Вопросов: 5
Ответов: 344
Профиль | | #8
Добавлено: 18.03.09 15:08
Номер ответа: 9
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #9
Добавлено: 18.03.09 16:43
:-) Ну "с ходу" можно что-то вроде такого попробовать:
Номер ответа: 10
Автор ответа:
Владимир
Вопросов: 2
Ответов: 8
Web-сайт:
Профиль | | #10
Добавлено: 18.03.09 18:43
Ага ты прав он выдал ошибку в 23 строке и выделил a_tb напиши пожалусто по точнее где и как задавать этот массив.Всего у меня 9(TextBox) окон для ввода,на этой форме(Form2).
Номер ответа: 11
Автор ответа:
fAndOrIn
Вопросов: 5
Ответов: 344
Профиль | | #11
Добавлено: 18.03.09 19:41
Jasmin, обрати внимание - условий 6, а не 8.
И к тому же в 3-м и 4-м условии знак < следует менять на >!
Владимир, уточни - ты действительно работаешь в VBA?
Приведенный тобой код (судя по именам) явно из VB6. Возможно, ошибка именно из-за этого.
Номер ответа: 12
Автор ответа:
Владимир
Вопросов: 2
Ответов: 8
Web-сайт:
Профиль | | #12
Добавлено: 18.03.09 19:57
fAndOrInДа VB6.0 русская,не нету в именах ошибки,когда же ты подсказал как через MsgBox все прекрасно работает!!!Просто мне стало интересно,в чем отличие если через массив красивее!!!
Номер ответа: 13
Автор ответа:
Владимир
Вопросов: 2
Ответов: 8
Web-сайт:
Профиль | | #13
Добавлено: 18.03.09 20:19
fAndOrInИ еще если не затруднит подскажи как можно Frame сделать прозрачным,вроде уже все в свойствах перепробывал!
Номер ответа: 14
Автор ответа:
fAndOrIn
Вопросов: 5
Ответов: 344
Профиль | | #14
Добавлено: 18.03.09 21:03
Вариант для VB6! Аффтар, ты влез не в ту ветку форума и заставил меня потеть!
А насчет Frame - без API наверно не получится, может кто другой подскажет?
Номер ответа: 15
Автор ответа:
fAndOrIn
Вопросов: 5
Ответов: 344
Профиль | | #15
Добавлено: 18.03.09 21:08