2015-11-12 3 views
0

x и y всегда являются числовыми.NiceLabel VBScript - Добавление переменных

x, y и Quantity всегда являются «1» по умолчанию, если пользователь не меняет значения. Я установил y = 4.

При запуске приведенного ниже кода появляется следующее: Переменная «Количество» имеет формат Numeric. Значение «4 + 1-1» недействительно для этого формата»

Dim x, y, z, result 
x = EndingLabel.Value 
y = BarcodedNumber.Value 
z = x & "+" & 1 & "-" & y 
result = z 
If (z > y) Then 
Quantity.Value = result 
Else 
End If 

Я не уверен, если проблема заключается в моем коде или программе, которую я пишу его, но это не кажется, вычисляя фактическое уравнение «4 + 1-1». Что я делаю неправильно?

+0

«4 + 1-1» не является уравнением, поскольку в выражении нет знаков равенства. –

+1

Спасибо! Хотел бы я попросил час назад. – MBrewer

ответ

1

Вы предполагаете, что «4 + 1-1» не рассматривается как строка, которая она есть. "Eval" вокруг него так, что оно будет принято в той форме, изменить назначение z к этому:.

z = eval(x & "+" & 1 & "-" & y) 

Если вы тусклый Еще один способ рассмотреть это. Подумайте о 2, что в коде может быть цифра 2, символ ASCII цифры 2 или что-то еще, и поэтому интерпретация является ключевым моментом здесь.

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