【问题标题】:Locking individual rows in a subform锁定子表单中的各个行
【发布时间】:2023-04-07 18:45:01
【问题描述】:

我有一个表单正在读取具有一对多关系的数据。在表格中,我有 5 列。每个字段最初都是可操作的。但是我希望在第 4 列和第 5 列中的数据填充后锁定各个行。有效地完成记录。我已经能够弄清楚如何关闭整个表单,但不是单独的行/记录。

这是我正在使用的代码。

If IsNullorEmpty(GPInterfaceID) Then
Me.ChargeType.Locked = True
Else
Me.ChargeType.Locked = False
End If
If IsNullorEmpty(GPPostingDate) Then
Me.ChargeType.Locked = True
Else
Me.ChargeType.Locked = False
End If

这是我尝试单独锁定各个列的代码版本。我还尝试一次锁定所有这些。

我根本不精通 VB。因此,我们将不胜感激任何帮助。

【问题讨论】:

  • 这是不可能的。
  • 如上所述,这是不可能的。您也许可以通过在 afterupdate 事件中从表单中删除记录来创建解决方法?
  • 我只是将表格一分为二。一个可编辑,一个锁定。感谢您的帮助。

标签: vb.net ms-access vba ms-access-2010


【解决方案1】:

你可以这样做:

Private Sub Form_Current()
    If IsNullorEmpty(GPInterfaceID) Then
        Me.ChargeType.Locked = True
    End If
End Sub

每次选择一行时都会触发该事件。如果所选行中的 GPInterfaceID 为空,则 Access 将锁定 ChargeType 字段。在那一刻,Access 将锁定每一行中的该字段,但这并不重要,因为在您单击另一行的那一刻,Access 将再次触发 Form_Current() 事件并锁定或解锁该字段。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多