大家都没有习惯看帮助文件或者在窗体属性里面认真看看有啥设置吗?
窗体有个filter 和orderby都可以根据目前的记录集进行筛选和排序。。。这样用了还可以反应在内置菜单上。。不要舍近求远跑去重载记录集
-------------分割-------------
Form.OrderBy 属性
全部显示
全部隐藏
可以使用 OrderBy 属性指定对窗体中的记录进行排序的方式。可读/写 String 类型。
语法
表达式.OrderBy
表达式 一个代表 Form 对象的变量。
说明
OrderBy 属性是一个字符串表达式 (字符串表达式:任一求值为一列连续字符的表达式。表达式的元素可以是:返回字符串或字符串 Variant (VarType 8) 的函数;字符串字面值、常量、变量或 Variant。),表示要依据其对记录进行排序的一个或多个字段的名称。当使用多个字段名时,请用逗号 (,) 分隔各个名称。使用 OrderBy 属性可以保存排序值并在以后进行应用。OrderBy 值与在其中创建这些值的对象保存在一起。打开对象时,会自动加载这些值,但不会自动应用它们。
通过输入一个或多个字段名来设置 OrderBy 属性时,记录将以升序排序。同样,在默认情况下 Visual Basic 也以升序对这些字段进行排序。
如果要按降序对记录进行排序,请在字符串表达式的末尾键入 DESC。例如,要根据合同名称按降序对客户记录进行排序,请将 OrderBy 属性设置为“ContactName DESC”。
选择要作为记录排序依据的字段,然后单击工具栏 (工具栏:包含可用于执行命令的按钮和选项的栏。要显示工具栏,请按 Alt 然后按 Shift+F10。)上相应的“排序”按钮,或指向“记录”菜单上的“排序”并单击子菜单上的相应命令。也可以使用 Visual Basic 设置窗体或报表的 OrderByOn 属性。
注释
创建新对象时,该对象将从创建它的表或查询中继承 RecordSource、Filter、OrderBy 和 OrderByOn 属性。对于窗体和报表,其继承的筛选在打开对象时并不会自动应用。
© 2006 Microsoft Corporation。保留所有权利。
Form.OrderByOn 属性
可以使用 OrderByOn 属性指定是否应用对象的 OrderBy 属性设置。可读/写 Boolean 类型。
语法
表达式.OrderByOn
表达式 一个代表 Form 对象的变量。
说明
OrderByOn 属性使用下列设置。
设置 Visual Basic 说明
是
True
在打开对象时应用 OrderBy 属性设置。
否
False
(默认值)在打开对象时不应用 OrderBy 属性设置。
当创建新对象时,该对象将从创建它的表或查询中继承 RecordSource、Filter、OrderBy、OrderByOn 和 FilterOn 属性。
示例
下面的示例将显示一条消息,表明“Mailing List”窗体的 OrderByOn 属性的状态。
Visual Basic for Applications
MsgBox "OrderByOn property is " & Forms("Mailing List").OrderByOn
© 2006 Microsoft Corporation。保留所有权利。