學生管理係統調試——實時錯誤(實時錯誤“424”“5”“91”)
最近剛剛敲了一個小小的練習小程序,其中出現了一些實時錯誤,想著也許以後還會出現就打算寫一個係列博文記錄一下,同時也算是和大家交流學習吧!
1、實時錯誤“424” ----要求對象
個人覺得出現這種情況完全是初學者的不熟悉造成的,因為出現這種錯誤的原因無非是:工程內的類名無效(簡單的說就是將窗體名或控件名寫錯了);
這種情況沒有遇到可能也有借鑒作用https://blog.sina.com.cn/s/blog_4eb23c8d01011f82.html。
2、實時錯誤"5"---無效的過程調用或參數
出錯代碼:
Private Sub Form_Load() Text1.Text = "" Text2.Text = "" Text1.SetFocus End Sub出現問題的原因:
在Form_load過程中不能使用Text1.SetFocus屬性(因為在窗體的加載過程中文本框還未畫出)。
解決方法:
將控件Text1的TabIndex屬性設為0。
3、實時錯誤“91”---對象變量或With塊變量未設置
'調用ExecuteSQL函數執行SQL語句獲得結果集 strSQL = "select * from user_Info where user_ID='" & txtUserName.Text & "'" Set objRs = ExecuteSQL(strSQL, strMsg)
創建對象變量有兩個步驟。第一,必須先聲明對象變量。然後必須用 Set 語句將一個正確的引用賦值給對象變量。同樣地,With...End With 塊必須先用 With 語句進入點來執行初始化。
此錯誤有以下的原因:
試圖使用的對象變量,還沒有用一個正確對象的引用來賦值。
我錯誤的原因:模塊代碼中設定的密碼和ODBC配置過程設定的不一樣,導致了Set語句無法將一個正確的引用賦值給對象變量。
解決方法:
給對象變量指定或再指定一個引用。例如,如果在下列的代碼中省略 Set 語句的話,那麼引用 MyObject 將會產生錯誤:
Dim MyObject As Object ' 創建對象變量。 Set MyObject = Sheets(1) ' 創建一個正確的對象引用。 MyCount = MyObject.Count ' 計數值賦給 MyCount。 試圖用的對象變量已經被設為 Nothing。 Set MyObject = Nothing ' 釋放此對象。 MyCount = MyObject.Count ' 引用了已釋放的對象。再指定引用給對象變量。例如,使用新的 Set 語句給對象設置新的引用。
此對象是正確的對象,但沒有被設置,因為在對象庫中,在 “引用” 對話框中沒有被選取。
在 “添加引用” 對話框選擇對象庫。
在 With 塊內GoTo 語句的去向。
不要跳進 With 塊。確保塊使用 With 語句進入點以執行初始化。
我的解決方法:修改模塊中的用戶名名稱和相應的密碼。
Public Function ConnectString() As String '************************************************** '作用:設置數據庫連接字符串 '輸入參數:無 '返回值:需要的數據庫連接字符串connectString '修改日期:2013.8.1 '作者:Senior_Lee '************************************************** ConnectString = "FileDSN=student.dsn;UID=lee;PWD=123" End Function考慮到博客的長度,今天就先更這些了;都是一些常見錯誤希望能給我的讀者幫助。同時在寫這篇博客的過程中也遇到了一些麻煩,當時調試遇到錯誤後隻是將錯誤的截圖保留了,並沒有留下代碼之類了這給自己寫博客總結的帶來了不小的麻煩。這算是給自己的一個警示,同時也是給大家一個提醒吧。不要太過相信自己的記憶力!
最後更新:2017-04-03 16:48:51