有没有办法让最终用户在 MS Access 中加载报告时对报告进行排序?
Is there a way to allow the end user to sort a report when loaded in MS Access?
我在 Access 中制作了一份报告,其中有 2 种主要排序方式 - 按日期和 FG 编号。我想将默认排序保留为按日期排序,但仍允许用户在 2 之间切换。有没有办法在报告本身上这样做?我不希望用户必须打开两个不同的报告,而且我认为让用户可以选择切换看起来也会更好。
根据以下建议尝试的方法
Private Sub Report_Load()
Me.OrderBy = "job_date"
Me.Frame360 = 1
End Sub
Private Sub Frame360_Click()
If Me.Frame360 = 1 Then
Me.OrderBy = "job_date"
Else
Me.OrderBy = "FGNumber"
End If
End Sub
当然有!
在表单的 header 中创建一个选项组。您可以为此使用向导,它更容易。提供两个(或更多)可能的字段作为标签名称进行排序。您可以设置一个默认选项,但这有时不能像在表单上那样对报表起作用(别担心,我们稍后会解决这个问题)。在下一个屏幕上,将值保留为默认值(1、2、...)。然后选择 "Save the value for later use"。我将样式保留在单选按钮上,但这取决于您。我的名字叫 optSortBy
.
然后,在 Report_Load()
事件中:
Private Sub Report_Load()
Me.OrderBy = "Field1"
Me.optSortBy = 1
End Sub
这会设置默认值,并按它排序。
然后,在按钮周围的框架的 On Click
事件中:
Private Sub optSortBy_Click()
If Me.optSortBy = 1 Then
Me.OrderBy = "Field1"
Else
Me.OrderBy = "Field2"
End If
End Sub
最后一步是将框架的 Display When
设置为 Screen Only
,因此它不会与报告一起打印。
我在 Access 中制作了一份报告,其中有 2 种主要排序方式 - 按日期和 FG 编号。我想将默认排序保留为按日期排序,但仍允许用户在 2 之间切换。有没有办法在报告本身上这样做?我不希望用户必须打开两个不同的报告,而且我认为让用户可以选择切换看起来也会更好。
根据以下建议尝试的方法
Private Sub Report_Load()
Me.OrderBy = "job_date"
Me.Frame360 = 1
End Sub
Private Sub Frame360_Click()
If Me.Frame360 = 1 Then
Me.OrderBy = "job_date"
Else
Me.OrderBy = "FGNumber"
End If
End Sub
当然有!
在表单的 header 中创建一个选项组。您可以为此使用向导,它更容易。提供两个(或更多)可能的字段作为标签名称进行排序。您可以设置一个默认选项,但这有时不能像在表单上那样对报表起作用(别担心,我们稍后会解决这个问题)。在下一个屏幕上,将值保留为默认值(1、2、...)。然后选择 "Save the value for later use"。我将样式保留在单选按钮上,但这取决于您。我的名字叫 optSortBy
.
然后,在 Report_Load()
事件中:
Private Sub Report_Load()
Me.OrderBy = "Field1"
Me.optSortBy = 1
End Sub
这会设置默认值,并按它排序。
然后,在按钮周围的框架的 On Click
事件中:
Private Sub optSortBy_Click()
If Me.optSortBy = 1 Then
Me.OrderBy = "Field1"
Else
Me.OrderBy = "Field2"
End If
End Sub
最后一步是将框架的 Display When
设置为 Screen Only
,因此它不会与报告一起打印。