вопрос о скрипте

VBScript.

есть переменная temp
temp=InputBox("Введите данные","Ввод данных")
надо чтобы юзер ввел туда числа

но без проверки он может ввести туда символы типа "char" или "string" и скрипт завершится ошибкой (про On Error Resume Next не напоминайте)

вопрос: как проверить в строке наличие любых остальных типов данных, кроме "integer"? тоесть чтобы допускались только цифры!
intemp=InStr(temp,*буква*) — это слишком большая для меня морока перечислять все буквы всех алфавитов;)  

1 комментарий

  • к сожалению, InputBox всегда возвращает строку 🙂
    можно проверять введенные данные ф-циями IsNumeric, либо Val, во второй может быть засада — например, если в региональных установках точка будет как разделить целой и дробной частей, то значение 555,99 просто молча обрежется  до 555. А также Val("строка") вернет ноль.
    Поэтому с IsNumeric работать предпочтительнее.
    То есть делать что-то такое:
    Dim ss
    ss = "xx"
    While Not IsNumeric(ss)
       ss = InputBox("Введите число", "Ввод данных") ‘ Не выпускаем пользователя, пока не введет число
    Wend