Var 变量
Public变量的定义和使用都很简单,也能很好地完成在不同事件代码中传递和共享数据的任务。
Foxtable提供了另一种类型的全局变量:Var变量。
Var变量在定义和使用上,都不如Public变量简洁,但是Var变量有自己的优势:
1、可以在Excel报表中引用
2、可以绑定到窗口的控件
3、可以通过事件跟踪其值的变化
除非有上述三点的需要,否则应该使用Public变量,而不是Var变量。
有关如何在Excel报表中引用Var变量,以及如何在窗口中将控件绑定到Var变量,我们会在相关章节介绍。
管理Var变量
在菜单的管理项目功能区,单击下图所示的按钮:
可以管理Var变量:
通过代码增加Var变量
也可以在运行过程中,通过代码增加Var变量。
语法
Vars.Add(VarName,GetType(Type))
Vars.Add(VarName,GetType(Type),Value)
参数
VarName:
变量名称
Type: 变量类型,需要配合GetType关键字来获得数据类型,例如GetType(String)表示字符型,GetType(Boolean)表示逻辑型。
Value:
可选参数,用于设置变量的初始值。
例如:
Vars.Add("Mark1",GetType(Boolean),False)
表示增加一个逻辑型Var变量Mark1,初始值为False
Vars.Add("起始日期",GetType(Date),#12/31/2007#)
表示增加一个日期型Var变量,名称为“起始日期”,初始值为#12/31/2007#
引用Var变量
通过上述方法定义Var变量后,
就可以在代码中引用var变量了。
引用Var变量的语法为:
Vars(VarName)
VarName:变量名称。
例如:
If
Vars("Mark1") = False Then并非一定要事先定义
在默认情况下,Var变量并非一定要事先定义,当我们向一个Var变量赋值的时候,系统会检查此Var变量是否已经定义,如果没有定义,会根据值的类型,自动增加一个同类型的变量。
例如执行下面的代码:
Vars("abc") = 99
如果我们事先并没有通过菜单定义abc变量,那么系统会自动增加一个名为abc的整数型变量,并将其值设置为99。
变量一旦增加,就不能再改变其类型,例如我们可以改变abc变量的值:
Vars("abc")
= 100
Output.Show(Vars("abc"))
但是如果将其他类型,例如一个字符型的数据写入变量abc,则会出错:
Vars("abc")
= "Foxtable" '会出错
需要注意的是,如果要将某个Var绑定到窗口控件,则必须事先通过菜单定义此变量。
强行要求Var变量必须事先定义
Var无需定义,可以直接使用,在编码方面更灵活,但是如果代码中出现了变量名称拼写错误,将没有办法自动给予提示。
如果要求Var变量必须事先定义才能使用,可以在项目属性中,将"Var变量必须提前定义"设置为True: