作者Jackalplus (Joey)
看板Visual_Basic
标题[VBA ] 关於资料存取的设定
时间Thu Dec 24 23:56:10 2009
最近利用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
1F:推 frank082474:写一个判断式 如果是NULL 则使用GOTO指令 12/27 14:32
2F:→ Jackalplus:感谢!我试试看 01/05 22:48