VBS教程:VBscript语句-Execute 语句

Execute 语句

执行一个或多个指定的语句。

Execute statements

所需要的 statements 参数是一个字符串表达式,其中包含一个或多个要执行的语句。  如果要在 statements 参数中包含多条语句,应使用分号或嵌入的分行将其分隔开。

说明


在 VBScript 中,x = y 可以有两种解释。首先是作为赋值语句,将 y 的值赋予 x。其次是作为表达式,测试xy 的值是否相等。如果相等,结果True;否则,结果FalseExecute 语句总是使用第一种解释,而 Eval 方法总是使用第二种。

注意  在 Microsoft(R) Visual Basic Scripting Edition 中并不存在赋值与比较之间的混淆,因为赋值运算符(=)与比较运算符(==)是不同的。

调用 Execute 语句的上下文确定了要运行的代码可以使用的对象和变量。作用域内的对象和变量是 Execute 语句中运行的代码可以使用的。不过,必须明白的一点是,如果被执行的代码创建了过程,那么该过程将不会继承它所在的过程的作用域。

与其他过程类似,新的过程的作用域是全局的,它继承了全局作用域的全部东西。与其他过程不同的是,它的上下文不是全局作用域,因此它只能在发生 Execute 语句的过程内的上下文中执行。不过,如果相同的 Execute 语句是在过程之外(例如在全局作用域)的作用域中被调用,那么它将不仅继承全局作用域中的所有东西,而且它还可以在任何地方被调用,因为它的上下文是全局的。下面的例子说明了这种特点:

Dim X            ' 在全局作用域中声明 XX = "Global"         ' 将全局的 X 赋值。Sub Proc1            ' 声明过程。  Dim X            ' 在局部作用域中声明 X  X = "Local"         ' 对局部的 X 赋值。            ' 此处的 Execute 语句建立了一个过程,            ' 在调用该过程时它将打印 X。            ' 它打印的将是全局 X,因为 Proc2            ' 继承了全局作用域中的一切。  Execute "Sub Proc2: Print X: End Sub"  Print Eval("X")      ' 打印本地 X  Proc2            '  Proc1 的作用域中调用 Proc2End SubProc2            ' 本行将导致一个错误,因为            ' Proc2  Proc1 之外是不可使用的。Proc1            ' 调用 Proc1  Execute "Sub Proc2: Print X: End Sub"Proc2            ' 这句话可以成功,因为 Proc2            ' 现在是全局可用的。

下面的例子显示了如何将 Execute 语句改写,免于将整个过程包含在引号内:

S = "Sub Proc2" & vbCrLfS = S & "  Print X" & vbCrLf S = S & "End Sub"Execute S

(0)

相关推荐

  • VBS教程:VBscript语句-Execute 语句

    Execute 语句执行一个或多个指定的语句. Execute statements 所需要的 statements 参数是一个字符串表达式,其中包含一个或多个要执行的语句.  如果要在 statements 参数中包含多条语句,应使用分号或嵌入的分行将其分隔开. 说明在 VBScript 中,x = y 可以有两种解释.首先是作为赋值语句,将 y 的值赋予 x.其次是作为表达式,测试x 和 y 的值是否相等.如果相等,结果为 True:否则,结果为 False.Execute 语句总是使用第一

  • VBS教程:方法-Execute 方法

    Execute 方法对指定的字符串执行正则表达式搜索. object.Execute(string) 参数object 必选项.总是一个 RegExp 对象的名称. string 必选项.要在其上执行正则表达式的文本字符串. 说明正则表达式搜索的设计模式是通过 RegExp 对象的 Pattern 来设置的. Execute 方法返回一个 Matches 集合,其中包含了在 string 中找到的每一个匹配的 Match 对象.如果未找到匹配,Execute 将返回空的 Matches 集合.

  • VBS教程:VBscript语句-功能介绍

    VBScript 语句描述语言元素将控制权交给一个 Sub 或 Function 过程.Call 语句声明一个类的名称.Class 语句声明用于替换文字值的常数.Const 语句声明变量并分配存储空间.Dim 语句当某个条件为 True 时或在某个条件变为 True 之前重复执行一个语句块.Do...Loop 语句重新初始化固定大小的数组的元素和释放动态数组的存储空间.Erase 语句执行一条或多条指定语句.Execute 语句在一个脚本的全局命名空间中执行一条或多条语句.ExecuteGlob

  • VBS教程:VBscript语句-ExecuteGlobal 语句

    ExecuteGlobal 语句执行一个功多个在脚本全局名字空间中指定的语句. ExecuteGlobal statement statement 参数是一个包含一个或多个可执行语句的字符串表达式 .在statement 参数中可以包含多条语句, 使用冒号将其分开. 说明在 VBScript 中, x = y 有两种解释方法.第一种方法是作为一条赋值语句, 将 y 的值赋给 x.第二种方法是作为一个表达式 ,用于测试 x 和 y 是否具有相同的值.如果它们相等,则结果为 True; 如果他们不相

  • Eval 函数 | Execute 语句 | ExecuteGlobal 语句使用说明

    Eval 函数 计算一个表达式的值并返回结果.  [result = ]Eval(expression) 参数 result 可选项. 是一个变量,用于接受返回的结果.如果未指定结果,应考虑使用 Execute 语句代替. expression 必选项.可以是包含任何有效 VBScript 表达式的字符串. 说明 在 VBScript 中,x = y 可以有两种解释.第一种方式是赋值语句,将 y 的值赋予 x.第二种解释是测试 x 和 y 是否相等.如果相等,result 为 True:否则 r

  • MySQL5.7.14下载安装图文教程及MySQL数据库语句入门大全

    如何下载: 我先去MySQL首页下载最新版本的MySQL-链接:https://www.mysql.com/downloads/ 进入此界面下载: Downloads–>MySQL Community Edition (GPL)(这是免费版的,当然,有钱的可以用收费的,功能更强大)–>MySQL Community Server (GPL) –>选择对应的系统和电脑版本(在这里,我选择的是Window系统64位的下载) –>No thanks, just start my down

  • VBS教程:函数-Eval 函数

    Eval 函数计算一个表达式的值并返回结果.  [result = ]Eval(expression) 参数result 可选项. 是一个变量,用于接受返回的结果.如果未指定结果,应考虑使用 Execute 语句代替. expression 必选项.可以是包含任何有效 VBScript 表达式的字符串. 说明在 VBScript 中,x = y 可以有两种解释.第一种方式是赋值语句,将 y 的值赋予 x.第二种解释是测试 x 和 y 是否相等.如果相等,result 为 True:否则 resu

  • VBS教程:fso方法-CreateTextFile 方法

    CreateTextFile 方法 创建指定文件并返回 TextStream 对象,该对象可用于读或写创建的文件. object.CreateTextFile(filename[, overwrite[, unicode]]) 参数 object 必选项.应为 FileSystemObject 或 Folder 对象的名称. filename 必选项.字符串表达式,指明要创建的文件. overwrite 可选项.Boolean 值指明是否可以覆盖现有文件.如果可覆盖文件,该值为 True:如果不

  • Python 中的判断语句,循环语句,函数

    目录 1. 判断语句 1.1 布尔类型和比较运算符 1.1.1 布尔类型 1.1.2 比较运算符 1.2 if 语句 1.2.1 if 语句基本格式 1.2.2 if else 语句 1.2.3 if elif else 语句 1.2.4 判断语句的嵌套 2. 循环语句 2.1 while 循环 2.1.1 while 循环基础语法 2.1.2 while 循环嵌套使用 2.2 for 循环 2.2.1 for 循环基础语法 2.2.2 range 语句 2.2.3 变量作用域 2.2.4 fo

  • VBS教程:VBscript语句-Const 语句

    Const 语句声明用于代替文字值的常数.  [Public | Private] Const constname = expression 参数Public 可选项.该关键字用于在 Script 级中声明可用于所有脚本中所有过程的常数.不允许在过程中使用. Private 可选项.该关键字用于在脚本级中声明只可用在声明所在的脚本中的常数.不允许在过程中使用. constname 必选项.常数的名称,根据标准的变量命名约定. expression 必选项.文字或其他常数,或包括除 Is 外的所有

随机推荐