0

问题

我有两种形式:

  • frmForms
  • frmDockRental

我有两个与此问题相关的控件:

  • lstOwnersfrmForms未绑定
  • cboOwnerfrmDockRental未绑定

第二种形式 ( frmDockRental) 使用位于frmForms(参见图片) 上的不同列表框打开。我有一个这样的列表框让我很伤心。这是一个过滤的联系人列表,双击它应该打开frmDockRental一个记录,并将cboOwner未绑定的设置为列表中的特定项目。lstOwners从中列出的相同项目frmForms

代码

经过大量的摆弄,我想出了这个 - 除了什么都没有发生。

Private Sub lstOwners_DblClick(Cancel As Integer)
On Error GoTo lstOwners_DblClick_Err

    On Error Resume Next
    If (Form.Dirty) Then
        DoCmd.RunCommand acCmdSaveRecord
    End If
    If (MacroError.Number <> 0) Then
        Beep
        MsgBox MacroError.Description, vbOKOnly, ""
        Exit Sub
    End If
    On Error GoTo 0
    Exit Sub

    DoCmd.OpenForm "frmDockRental", acNormal, "", "", acFormAdd, acDialog, Me.lstOwners
    DoCmd.Close acForm, Me.Name

lstOwners_DblClick_Exit:
    Exit Sub

lstOwners_DblClick_Err:
    MsgBox Error$
    Resume lstOwners_DblClick_Exit
End Sub

然后frmDockRental,这个:

Private Sub Form_Load()
On Error GoTo Form_Load_Err

    DoCmd.MoveSize , , 5.3 * 1440, 5.2 * 1440
'    If (IsNull(OpenArgs)) Then
'        Exit Sub
'    End If
    If Me.OpenArgs <> vbNullString Then
        Me.cboOwner = Me.OpenArgs
    End If
    If (Not IsNull(OpenArgs)) Then
        DoCmd.GoToRecord , "", acNewRec
    End If

Form_Load_Exit:
    Exit Sub

Form_Load_Err:
    MsgBox Error$
    Resume Form_Load_Exit
End Sub

我认为 OpenArgs 将是完成此任务的最佳方法,但它不起作用。什么都没有发生。没有错误,什么都没有。

窗体

编辑:

这是一步调试的图像。

分步调试

4

0 回答 0