表单上的文本框必须从另一个表单中选取数据



我有两种形式:frmReceipts和frmDiffs。 frmReceipts 有一个未绑定的控件,用于显示此函数的结果:

Public Function RecDiffs() As Double
RecDiffs = Forms!frmDiffs.Text17
End Function

目前,Text17 的值为 54.00,但当 frmReceipts 打开时,它在控件 Text41 上显示值 0.00。我可以通过单击运行命令按钮来更正此问题 Me.Form.Refresh

如果"刷新"在

加载时、打开时或"激活时"运行,则刷新不起作用(即 Text17 继续显示 0.00)。它似乎只能通过单击命令按钮来工作。理想情况下,我希望在窗体打开时在 Text17 中显示正确的值。此外,如果我将 frmReceipts 置于设计模式,然后返回表单视图,则 Text17 会显示正确的数据。

使用

.Requery

而不是刷新。

在 frmReceipts 中定义未绑定控件的控件源

等于
Control Source: =[Forms]![Form2]![Text0]

它将显示正确的值。

还可以将控件定义为

enabled: false
locked: True

我检查了您的代码(MS Access 2013),它运行良好,但如果 Text17 包含字符串,则函数中可能会出现转换问题。

偶然发现了答案:frmDiffs按"ClientName"对记录进行排序。删除该过程完全解决了问题。这可能是由于目前只有一条记录造成的。思科建议我上传数据库。我在上传之前删除了某些数据。这导致了与 OrderBy 过程相关的错误消息,然后我将其删除。

相关内容

最新更新