我试图让备忘录字段在离开字段时被拼写检查,并且当它将子表单留给主表单时。我想在没有点击按钮的情况下自动完成此操作,因为我需要数据尽可能准确无误。
在主要表单中,我使用此代码在您离开现场时拼写检查标题字段。
Private Sub DetailedTitle_Exit(Cancel As Integer)
'This code works to spellcheck the title after leaving.
With Me!DetailedTitle
If Len(.Value) > 0 Then
DoCmd.SetWarnings False
.SelStart = 1
.SelLength = Len(.Value)
DoCmd.RunCommand acCmdSpelling
.SelLength = 0
DoCmd.SetWarnings True
End If
End With
End Sub
这很有效,因为用户将99%的时间从此字段移动到主窗体中的另一个字段。当我在子窗体上使用时,即使我使用on exit字段事件和on exit子窗体事件,这也不起作用。它似乎工作,但如果你点击它实际上会给出一个错误。我没有足够的智慧来记录错误,我已经删除了代码。
我也不会反对,如果我可以让它循环思考子表单,因为它是一个连续的形式,但只有一个字段。
欢迎任何建议或提示。我刚刚了解了Do.Cmd.RunCommand acCmdSpelling,但似乎缺少关于子表单的内容。感谢。
答案 0 :(得分:0)
我做了一些研究:http://www.pcreview.co.uk/threads/run-the-spell-check-through-code.1636292/
一位用户提到您要检查的控件必须是焦点。
Sub subformMemo_OnExit()
Me.subformMemo.setfocus
DoCmd.RunCommand acCmdSpelling
End Sub
另一方面,此代码会产生无法离开控件的问题,因为您将始终再次对其进行设置。
这有帮助吗?