即使在重新查询后,我也在VBA中使用以下代码来保持对某个记录集的关注:
With Forms!frmMain!frmMainSub
strControlName = .Form.ActiveControl.Name
lngCurrentPos = .Form.Recordset.AbsolutePosition
.Requery
.Form.Recordset.AbsolutePosition = lngCurrentPos
.Form.Controls(strControlName).SetFocus
End With
此代码的问题在于子窗体位于数据表视图中,通常按字段排序。由于上面的代码记录了动态集或快照类型的Recordset对象上的绝对位置,因此它无法跟踪排序的数据表。
在重新申请表格后,是否有更好的方法来保持对特定字段的关注?
编辑:
这个问题不是重复的,因为有关于保持焦点处于相同形式的答案。问题是我的格式不同,而且即使将过滤器应用于其中一个字段,我也要保持焦点。