[VBA ] 關於資料存取的設定

看板Visual_Basic作者 (Joey)時間16年前 (2009/12/24 23:56), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串1/1
最近利用Excel的VB編輯器弄了一個表單,目的是方便使用者能對另外一個Excel檔 進行資料的查詢、輸入及修改,但是在查詢功能上遇到了一點問題,基本上可以運作 但如果資料內的欄位是空白,就會出現"Null值設定錯誤"的訊息 以下是程式碼,舉例來說如果檔案內的Class canceled欄位沒有資料的話,就無法進行 查詢,因為實際使用時並非每一欄都必須輸入資料,所以想請教一下該如何修改程式碼 呢? Private Sub CommandButton4_Click() If TextBox1 = "" Then Exit Sub Dim conn1 As New ADODB.Connection Dim rst1 As New ADODB.Recordset Dim sq1 As String conn1.Open "provider=microsoft.jet.oledb.4.0;extended properties=excel 8.0;data source=" & ThisWorkbook.Path & "/monthly report.xls" sq1 = "Select * from [教室課程$] WHERE [Course Name]='" & TextBox1.Text & "' and [Class Date]='" & TextBox5.Text & "'" rst1.Open sq1, conn1, adOpenKeyset, adLockOptimistic TextBox1.Text = rst1.Fields("Course Name") TextBox5.Text = rst1.Fields("Class Date") TextBox2.Text = rst1.Fields("On Duty Member") TextBox6.Text = rst1.Fields("Instructor ID") TextBox3.Text = rst1.Fields("Class canceled") TextBox7.Text = rst1.Fields("Training Hours") rst1.Close conn1.Close Set rst1 = Nothing Set conn1 = Nothing MsgBox "查詢成功" End Sub -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.169.58.79

12/27 14:32, , 1F
寫一個判斷式 如果是NULL 則使用GOTO指令
12/27 14:32, 1F

01/05 22:48, , 2F
感謝!我試試看
01/05 22:48, 2F
文章代碼(AID): #1BCuySj5 (Visual_Basic)