双击MS Access列表框将打开窗体到特定记录,但无法编辑

双击MS Access列表框将打开窗体到特定记录,但无法编辑

问题描述:

我有一个Access数据库,其中有一个患者入院表单,列表框中列出了患者所有的过程。列表框中包含了ProcedureID,ProcedureDate和ProcedureTitle。列表框被绑定到1或procedureID。双击MS Access列表框将打开窗体到特定记录,但无法编辑

我有打开过程窗体的列表框的双击事件。该表格具有标签子表格,其中包含与该程序有关的各种数据位。

窗体打开正确的记录并在窗体和子窗体中显示相关数据。问题是,当我尝试编辑那就是程序的形式出现以下错误信息上的数据..

you can't assign a value to this object 

错误指向我的程序表上脏事件。这只是一个问题,如果我试图编辑父窗体中的数据,子窗体工作正常,任何编辑都被接受。

我在列表框

Private Sub lst_Procedure_DblClick(Cancel As Integer) 

    'double click to open procedure form to the selected record 

    Dim ProcID As Long 

    ProcID = Me!lst_Procedure 

    DoCmd.Close acForm, "frm_Admission" 
    DoCmd.OpenForm "frm_Procedure", , , "[ProcedureID] = " & ProcID 

End Sub 

的双击事件的代码和程序的形式在这个代码开到正确的记录

Private Sub Form_Dirty(Cancel As Integer) 

    'open Procedure form to record selected in procedure list 
    Me.ProcedureID = Me.OpenArgs 

End Sub 

任何建议将不胜赞赏。我试过在onLoad上接收openargs而不是onDirty,但无济于事。

DoCmd.OpenForm "frm_Procedure", , , "[ProcedureID] = " & ProcID 

用现有记录打开表单。您正在使用OpenForm的参数WhereConditionhttps://msdn.microsoft.com/en-us/library/office/ff820845.aspx

因此,不需要以打开的形式设置Me.ProcedureID。只需删除Dirty事件过程。我想ProcedureID是主键和一个自动编号?
自动编号值不能更改。