在 2 个字段访问之间切换连续子表单的排序 VBA

Toggle Sorting of a Continous Subform between 2 fields Access VBA

我有一个包含几个字段的连续子表单的表单,对这个问题很重要的是一个 ID 字段,它是唯一的文本和一个截止日期字段。不是表单加载所有记录,它们按子表单的 OrderBy 属性 的 ID 字段排序,而不是查询。

在 parent 表单中,我为每一列设置了 headers 和一个用于按截止日期激活和停用排序的切换按钮。现在,表单加载按 ID 排序,当单击切换按钮时,它按我想要的日期排序。但是,当再次单击切换按钮将其停用时,表单将保留其按日期排序。

这是我目前在切换按钮后面的代码:

Private Sub tglSortDueDate_Click()
    If Me.tglSortDueDate = True Then
        Me.sbfrmFindRecords.Form.OrderBy = "DueDate, ID"
        Me.OrderByOn = True
    Else
        Me.sbfrmFindRecords.Form.OrderBy = "ID"
        Me.OrderByOn = True
    End If

    Me.sbfrmFindRecords.Requery
End Sub

这可能吗,或者我应该改为更改记录源以根据我的记录源在 2 个不同类别的查询之间切换 table?

提前致谢

我最终采用了不同的方法,而不是在表单端进行排序,而是根据源查询使用 2 种不同的排序进行了 2 次查询。然后,当切换按钮时,我在 2 个查询之间切换。