Ms access MSAccess VBA ORDER(通过不处理动态记录源)

Ms access MSAccess VBA ORDER(通过不处理动态记录源),ms-access,vba,Ms Access,Vba,下面的代码在我的表单上设置recordsource。由于所有表单属性均为空,因此订单依据不起作用。我怎么分类 Private Sub Form_Load() If Me.OpenArgs <> "" Then Me.AllowFilters = True Me.FilterOn = True Me.RecordSource = "QRY: BPRIL Data Entry By Order" Me.Filte

下面的代码在我的表单上设置recordsource。由于所有表单属性均为空,因此订单依据不起作用。我怎么分类

Private Sub Form_Load()

    If Me.OpenArgs <> "" Then

        Me.AllowFilters = True
        Me.FilterOn = True
        Me.RecordSource = "QRY: BPRIL Data Entry By Order"
        Me.Filter = Me.OpenArgs
        Me.Requery

    ElseIf (Me.RecordSource <> "BPRIL Data Entry") Then

        Me.RecordSource = "BPRIL Data Entry"
        Me.Requery

    End If

    Me.OrderBy = "[Item #]"
    Me.OrderByOn = True
Private子表单_Load()
如果Me.OpenArgs“”则
Me.AllowFilters=True
Me.FilterOn=正确
Me.RecordSource=“QRY:BPRIL按订单输入数据”
Me.Filter=Me.OpenArgs
我,再询问
ElseIf(Me.RecordSource“BPRIL数据输入”),然后
Me.RecordSource=“BPRIL数据输入”
我,再询问
如果结束
Me.OrderBy=“[Item#]”
Me.OrderByOn=True

End Sub

如果您正在设置记录源,为什么不借此机会进行排序

Me.RecordSource = "SELECT Stuff FROM [BPRIL Data Entry] ORDER BY [Item #]"

你应该考虑帮自己一个忙,去掉表名和字段名中的空格,这会使生活变得更加容易。

正确的一个是带有空间的项目。当你说订单是不工作的,因为所有的表单属性都是空白的,你是什么意思?您是否尝试过在即时窗口中使用
?Screen.ActiveForm.OrderBy
?我问,因为上面的方法应该有效。@Remou现在似乎有效。谢谢。我尽量避免在VBA代码中使用SQL。另外,“QRY:BPRIL按顺序输入数据”的SQL有点长而且复杂。