点击下载此附件
附件程序主窗体为绑定单个窗体,子窗体为绑定连续窗体,共用同一个表格。
设计目的:在主窗体添加、修改记录可以同时看到整个表格的变化情况。为了使用方便,需要主窗体与子窗体记录定位于同一条记录。
方法:
1、在子窗体中控制主窗体记录的位置,采用添加复选框的方法。每次只能选择一条记录,且用DoCmd方法来控制主窗体记录位置:
DoCmd.GoToRecord
acDataForm, "主窗体名", acGoTo, rst.AbsolutePosition,记录位置与ADODB记录集筛选记录位置一样。
如果同时复选2条记录,程序将会报错,撤销更改,并将记录位置还原。还原的方法是建立一个引用子窗体记录集的子程序,用DAO方法引用窗体记录集。
DAO记录定位是通过设置记录集AbsolutePosition的属性值来实现。
2、主窗体控制子窗体位置主要是:跳至第一条记录、跳至最后一条记录 和 前一条记录、后一条记录。
建立用DAO方法引用子窗体记录集的程序,使用rst.move方法来实现记录位置联动。
总结:
DoCmd方法的记录位置与ADODB记录的AbsolutePosition位置一样。
DAO方法记录位置为ADODB记录AbsolutePosition-1。