Access 2010 运行时错误 2185
Posted
技术标签:
【中文标题】Access 2010 运行时错误 2185【英文标题】:Access 2010 Runtime Error 2185 【发布时间】:2013-03-22 11:15:14 【问题描述】:您好,我在 Access 2007 中创建了一个应用程序,它的前端和后端是分开的。我正在尝试使用 Access 2010 运行时打开数据库,但是当我更改组合框的选定项时应用程序崩溃。
我收到以下错误:
“由于运行时错误,此应用程序的执行已停止。应用程序无法继续,将被关闭。”
在研究了这个问题之后,有几个人提到运行compact和repair,发现解决了他们的问题,但是对我的没有任何影响。
但是,我发现大多数人回过头来说设置了一些错误日志记录。所以我已经这样做了,当在 2010 运行时运行时,会收到一条弹出消息,内容如下:
错误号:2185,除非控件具有焦点,否则不能引用控件的属性或方法。
但是在 Access 2007 中运行时,没有错误并且代码运行良好。
这是我一直在使用的代码:
Private Sub ComboBox1_Change()
If Not ComboBox1.Text = "" Then
ComboBox1.Dropdown
End If
End Sub
我的问题是,当 Access 2007 中没有错误时,为什么这会突然成为在 2010 运行时运行的问题?
【问题讨论】:
我在将我的测试数据库切换到 2010 时遇到了一些奇怪的问题,但反编译将它们整理出来,或者在最坏的情况下,导入新的数据库。 【参考方案1】:将If Not ComboBox1.Text = "" Then
更改为If Not ComboBox1 = "" Then
无论出于何种原因,Access 不喜欢您在其严格控制之外使用 .Text
属性。
【讨论】:
您可以在控件具有焦点时使用文本,并且由于这是控件的更改事件,因此它具有焦点。 我认为如果您以编程方式更改文本/记录,`change 可能会触发它,但我想不会!以上是关于Access 2010 运行时错误 2185的主要内容,如果未能解决你的问题,请参考以下文章
访问 2010 运行时中的访问 2003 应用程序运行时错误
将 Excel 文件导入 Access 表运行时错误“-2147352565 (8002000b)”