2013-03-26 3 views
1

считают, что numberString $ является «1st (3) Name ...», а в моей поддержке кода $ является «1s», что является правильным. NumericCheck должен быть ложным, но я всегда становлюсь правдивым! Где ошибка?IsNumeric true, но должно быть ложным

numbertring$ = Worksheet1.Cells(i, 1) 
support$ = Left$(numbertring$, 2) 

numericCheck = IsNumeric(Val(support$)) 

Thx заранее за вашу помощь

+2

Ты выбираешь Значение поддержки $ как ваш чек, который будет TRUE, поскольку он вытаскивает числа из строки. –

ответ

2

Вы запускаете support$ через Val перед проверкой, если она является числовой. The definition of Val is:

Функция VAL принимает строку как ввод и возвращает числа, найденные в этой строке.

Ниже показано, как ваш код интерпретируется:

IsNumeric(Val(support$)) 
IsNumeric(Val("1s")) 
IsNumeric(1) 

Так должно быть ясно теперь, почему numericCheck правда, не ложь :)

+0

Thx, это была ошибка ... я ставлю теперь numericCheck = isNumeric (support $), и он отлично работает. – Alpan67

Смежные вопросы