2013-03-22 46 views
1

您好我有一個在Access 2007中創建的應用程序,它的前端和後端被拆分。我試圖使用Access 2010運行時來打開數據庫,但是當我更改組合框的選定項時,應用程序崩潰。訪問2010運行時錯誤2185

我收到以下錯誤:

「這個應用程序的執行已停止由於運行時錯誤應用程序無法繼續,將被關閉。」

經過研究這個問題後,有幾個人提到運行compact和修復,發現修復了他們的問題,但是對我的沒有什麼影響。

但是,我發現大多數人回來說,把一些錯誤日誌記錄到位。所以我已經這樣做了,並且在2010運行時運行時,收到一條彈出消息,內容如下:

錯誤號:2185,除非控件具有控件,否則無法引用控件的屬性或方法焦點。

但是,在Access 2007中運行時,沒有錯誤,代碼工作正常。

這是我的代碼已經被使用:

Private Sub ComboBox1_Change() 
If Not ComboBox1.Text = "" Then 
ComboBox1.Dropdown 
End If 
End Sub 

我的問題是,爲什麼會這樣突然成了2010年運行時運行的問題,當有Access 2007中沒有錯誤?

+0

我有一些奇怪的問題,我的測試數據庫切換到2010年,但反編譯整理出來,或最壞的情況下,導入到一個新的數據庫。 – Fionnuala 2013-03-22 21:00:15

回答

0

變化If Not ComboBox1.Text = "" ThenIf Not ComboBox1 = "" Then

無論出於何種原因訪問不喜歡你用外面的是嚴格控制.Text屬性。

+0

當控件擁有焦點時,您可以使用文本,因爲這是控件的更改事件,因此它具有焦點。 – Fionnuala 2013-03-22 20:58:29

+0

我以爲'如果以編程方式更改文本/記錄,可能會發生更改,但我猜不是! – Brad 2013-03-22 23:18:48