Evaluates an expression and returns the result.
In VBScript, x = y can be interpreted two ways. The first is as an assignment statement, where the value of y is assigned to x. The second interpretation is as an expression that tests if x and y have the same value. If they do, the result is True; if they are not, the result is False. The Eval method always uses the second interpretation, whereas the Execute statement always uses the first.
In Microsoft® JScript™, no confusion exists between assignment and comparison, because the assignment operator (=) is different from the comparison operator (==).
The following example illustrates the use of the Eval function:
Sub GuessANumber Dim Guess, RndNum RndNum = Int((100) * Rnd(1) + 1) Guess = CInt(InputBox("Enter your guess:",,0)) Do If Eval("Guess = RndNum") Then MsgBox "Congratulations! You guessed it!" Exit Sub Else Guess = CInt(InputBox("Sorry! Try again.",,0)) End If Loop Until Guess = 0 End Sub