Eval方法的使用-杨雪
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


Eval方法的使用

发表时间:2017/4/13 9:20:59 评论(2) 浏览(6264)  评论 | 加入收藏 | 复制
   
摘 要:可以使用 Eval 函数可以计算结果为文本字符串或数值的表达式 (表达式:运算符、字段名、函数、文本和常量的组合,计算结果为单个值。表达式可以指定条件(如 Order Amount>10000),也可以对字段值执行计算(如 Price*Quantity)。)。
正 文:

可以构造一个字符串然后把它传递给 Eval 函数,就像字符串是一个真正的表达式一样。Eval 函数将计算字符串表达式 并返回其值。例如,

Eval("1 + 1") 返回 2

如果传递给 Eval 函数的字符串包含一个函数的名称,则 Eval 函数会返回函数的值。例如,

Eval("Chr$(65)") 返回“A”。

可以使用 Eval 函数访问那些通常在 Visual Basic 中不可用的表达式运算符。例如,不能在代码中直接使用 SQL 运算符 Between...And In,但是可以在传递给 Eval 函数的表达式中使用它们。

下一个示例用于确定“frmOpen”窗体上“国家”控件的值是‘中国’。如果字段值是‘中国’,则 intState 的值为 True (1)。请注意,使用单引号 (') 将字符串包含在另一个字符串中。

Private Sub 国家_Change()
    Dim intState As Integer
    intState = Eval("Forms!frmOpen!国家  not In ('中国')")
    Me.Check65 = intState
End Sub

 

 

in 类似写法:

此示例用于确定“订单”窗体上“货主地区”控件的值是否为几个特定的州缩写名称中的一个。如果字段中包含其中一个缩写名称,则intState的值为 True (–1)。请注意,使用单引号 (') 将字符串包含在另一个字符串中。

Dim intState As Integer
intState = Eval("Forms!Orders!ShipRegion In " _
    & "('AK', 'CA', 'ID', 'WA', 'MT', 'NM', 'OR')")

注意:如果传递给 Eval 函数的字符串不包含数值表达式或函数名称,而仅包含一个简单的文本字符串,则会出现运行时错误 。例如,Eval("Smith") 就会产生错误。


Access软件网交流QQ群(群号:198465573)
 
 相关文章
Access VBA教程:SelectObject方法  【杨雪  2016/4/5】
vb中set和new的使用方法  【杨雪  2016/8/16】
【Access示例】OldValue 属性详解  【杨雪  2016/11/1】
ConvertAccessProject方法  【杨雪  2016/12/20】
【Access文章】AddColon属性/控件的默认控件样式设置方...  【杨雪  2017/3/7】
常见问答
技术分类
相关资源
文章搜索
关于作者

杨雪

文章分类

文章存档

友情链接