前提,2003版,仅针对窗体Recordset为ADO数据集方式,不考虑记录源为数据表或是SQL语句方式。
一、窗体单独使用排序:.
对使用ADO数据集的窗体,设计和运行中都可以改变窗体OrderBy,OrderByOn=True来执行排序;
二.、.窗体单独使用筛选:
对使用ADO数据集的窗体,设计和运行中都可以改变的窗体Filter,FilterOn =
True,来执行筛选;
三、同时使用排序和筛选
1. 窗体里同时设置了筛选和排序时,如没有在Open或Load或其他过程中设定OrderByOn=True、FilterOn = True,则窗体不执行筛选和排序,即设定的筛选和排序对窗体数据无效。
2. 窗体里同时设置了筛选和排序时,不能同时设定OrderByOn=True和FilterOn = True,同时设定必定发生错误(运行时错误31,无法初始化数据提供程序),原因分析:
无论顺序是⑴OrderByOn=True、⑵FilterOn = True还是⑴FilterOn = True、⑵OrderByOn=True,⑴运行后,继续运行⑵,窗体RecordsetClone都会变成“<无法初始化数据提供程序>”,这是咋回事???谁把RecordsetClone搞没了?
即使用On Error Resume Next忽略错误,且⑵也会设为True,但⑵的设置对窗体数据操作无效!,仅仅⑴有效。
是否可以这样结论:对使用ADO数据集的窗体,对窗体的筛选和排序中只能选其一使用,不能同时并用?
如果结论是正确的,有否可以同时并用的方法?。
请大侠们指教。