我到处搜索这个,它似乎是一个简单的修复,但我似乎无法找到解决方案。我在Access 2013表单中有几个Rectangle控件,我创建了一个处理它们的OnClick事件。我已经尝试了几种不同的方法,并且我认为我找到了最简单/最干净的方法。我把控件放在一个集合中,并为每个控件改变OnClick事件。这是我的问题:访问打开窗体,并认识到我改变了控件的事件,但一旦我点击控件,它会引发错误,并不会执行该事件。访问2013 VBA - 设置新的点击事件控件
的错误:
"The expression On Click entered as the event property setting produced the following error: The expression you entered has a function name that Microsoft Access can't find."
的代码:
Private Sub Form_Load()
Dim m_colRectangle As Collection
Dim ctl As Access.CONTROL
Set m_colRectangle = New Collection
For Each ctl In Me.Controls
If ctl.ControlType = acRectangle Then
If ctl.Name = "shpTest" Then
m_colRectangle.Add ctl, ctl.Name
ctl.OnClick = "=TestClick()" ' <--- Error on this line
End If
End If
Next ctl
End Sub
Private Sub TestClick()
MsgBox "Test"
End Sub
可替换地,我试图在Form_Load事件的简单shpTest.OnClick = "=TestClick()"
,和由此产生的相同的错误。有人有主意吗?
哇!有效!我没有想过这样做。我的心被炸毁了。谢谢您的帮助!顺便说一下,我也在桌面版本上。 – JaredS 2014-10-17 17:50:59
Ahhhhh我想***是一个表达式不是吗? – RubberDuck 2014-10-17 17:51:12
我想它有时只是需要一点团队合作来查看它出错的地方。感谢你们两位! – JaredS 2014-10-17 17:52:56