Inputbox Для Integer

Тема в разделе "Lotus - Программирование", создана пользователем k85, 25 янв 2012.

  1. k85

    k85 Well-Known Member

    Регистрация:
    11 окт 2011
    Сообщения:
    137
    Симпатии:
    0
    Необходимо указать, что если в Inputbox нажали Отмена, то происходил выход
    Следующий код подходит, если numb As String, но мне необходимо именно Integer
    Код (Text):
    Dim numb As Integer
    numb = Inputbox$("Введите колличество", "количество")
    If numb="" Then Exit Sub
    результат Type mismatch

    Как сделать проверку для Integer?
     
  2. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    из хэлпа
    Dim num As Integer
    num% = CInt(InputBox$("How many do you want?"))
     
  3. k85

    k85 Well-Known Member

    Регистрация:
    11 окт 2011
    Сообщения:
    137
    Симпатии:
    0
    Morpheus
    так пробовал, но если нажать Отмена, то пишет Type mismatch
     
  4. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    можно так
    Dim st As String
    st= (Inputbox$("How many do you want?"))
    If Isnumeric(st) Then Msgbox Cint(st)
     
  5. VladSh

    VladSh начинающий
    Lotus team

    Регистрация:
    11 дек 2009
    Сообщения:
    1.251
    Симпатии:
    2
    После проверки на пустоту можно делать Isnumeric, как сказали выше, а можно Val() - эта штука перегонит строку в число, вернее выбросит строковые символы, оставив числовые, а потом уже можно делать CInt().
    P.S. Вообще я Val'ом очень часто пользуюсь, особенно полезно, когда тебе надо значение 0 или 1, а у тебя в поле "", - оно возвращает 0.
     
Загрузка...

Поделиться этой страницей