Application.BuildCriteria 方法 (Access)
时 间:2022-02-19 09:17:19
作 者:杨雪 ID:42182 城市:南京
摘 要:BuildCriteria 方法返回一个经过分析的条件字符串,就像它在查询设计网格中一样,在"按窗体筛选"或"按窗体服务器筛选"模式下 显示。 例如,您可以设置窗体的 筛选器 或 ServerFilter 属性根据用户的不同标准。 BuildCriteria 方法可用于构造 Filter 或 ServerFilter 属性字符串表达式参数。 字符串 。
正 文:
语 法:
表达式.BuildCriteria (Field、 FieldType、 Expression)
expression:表示 Application 对象的变量。
参 数:
名称 必需/可选 数据类型 说明
Field 必需 String 要为其定义条件的字段。
FieldType 必需 Integer 固有常量,指示字段的数据类型。 可以设置到 DAO DataTypeEnum 值中的一个。
Expression 必需 String 一个字符串表达式,它标识要进行语法分析的条件。
返回值
String
备 注:
BuildCriteria 方法使您可以轻松地构造基于用户输入筛选条件。 它分析 表达式 参数的方式与在查询设计网格中按窗体筛选或按窗体服务器筛选模式输入表达式时 分析表达式 的方式相同。
例如,在"订单"表上创建查询的用户可能通过设置"订购日"字段的条件,将 结果集 限制为 1995 年 1 月 1 日 之后的订单。 用户可以在 orderDate 字段下的"条件"行中输入如下表达式:
1-1-95
Microsoft Access 会自动对这个表达式进行语法分析并返回以下表达式:
#1/1/95#
BuildCriteria 方法提供相同的分析从 Visual Basic 代码。 例如,若要返回之前正确分析字符串,可以提供 BuildCriteria 方法的下列参数:
Dim strCriteria As String strCriteria = BuildCriteria("OrderDate", dbDate, ">1-1-95")
由于需要以正确分析的形式提供 Filter 属性的条件,因此可以使用 BuildCriteria 方法来构造一个正确分析的字符串。
BuildCriteria 方法用于构造具有多个条件的字符串,如果这些条件是指相同的字段。 例如,可以使用具有以下参数的 BuildCriteria 方法构造一个字符串,该字符串具有与 orderDate 字段相关的多个 条件:
strCriteria = BuildCriteria("OrderDate", dbDate, ">1-1-95 and <5-1-95")
此示例返回以下条件字符串:
OrderDate>#1/1/95# And orderDate<#5/1/95#
但是,如果要构造一个引用多个字段的条件字符串,您必须创建各字符串并将它们连接起来。 例如,如果要构造一个筛选器以显示运费少于 50 美元的订单放在 1-1-95 后记录的条件,您需要使用两次 BuildCriteria 方法,并连接结果字符串的结果。
示 例:
下面的示例提示用户输入产品名称的前几个字母,然后用 BuildCriteria 方法来构造基于用户输入的条件字符串。 接下来,此过程提供此字符串作为参数的产品窗体的 Filter 属性。 最后,设置 FilterOn 属性以应用筛选器。
Sub SetFilter() Dim frm As Form, strMsg As String Dim strInput As String, strFilter As String ' 在form视图中打开Products表单. DoCmd.OpenForm "Products" ' 返回指向Products窗体的窗体对象变量. Set frm = Forms!Products strMsg = "输入产品名称的一个或多个字母 " _ & "followed by an asterisk." ' 提示用户输入. strInput = InputBox(strMsg) ' 建立标准的字符串. strFilter = BuildCriteria("ProductName", dbText, strInput) ' 设置Filter属性以应用Filter. frm.Filter = strFilter ' 设置FilterOn属性;表单现在显示过滤后的记录. frm.FilterOn = True End Sub
Access软件网官方交流QQ群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- Access对子窗体数据进行批...(10.30)
- 最精简的组合框行来源数据快速输...(10.25)
- Access仿平台的多值选择器...(10.24)
- 【Access日期区间段查询】...(10.22)
- 【Access源码示例】VBA...(10.12)
- Access累乘示例,Acce...(10.09)
- 数值8.88,把整数8去掉,转...(10.08)
- 【Access自定义函数】一个...(09.30)
- 【Access选项卡示例】Ac...(09.09)
学习心得
最新文章
- Access快速开发平台企业版--...(11.18)
- 不会用多表联合查询,多表查询没结果...(11.16)
- 【案例分享】主键字段值含有不间断空...(11.16)
- Access快速开发平台--后台D...(11.14)
- 微软Access邀测新Monaco...(11.12)
- Access列表框左右互选、列表框...(11.11)
- 高效率在导入数据前删除记录(11.10)
- Access报价单转订单示例代码(11.08)
- Access系统自带的日期选择器不...(11.08)
- 分享一下Access工程中的acw...(11.07)