以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]代码错误(已经解决,谢谢Bin) (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=43502) |
-- 作者:cqlwsam -- 发布时间:2013/12/9 11:11:00 -- [求助]代码错误(已经解决,谢谢Bin) 界面如下图: 代码在控件cmb_kind的textchanged事件中,提示错误。代码如下:Dim txt As String= e.sender.Text Dim dtp1 As WinForm.DateTimePicker= e.Form.Controls("DateTimePicker1") Dim dtp2 As WinForm.DateTimePicker= e.Form.Controls("DateTimePicker2") If txt="住院患者" Then If e.Form.Controls("Rdo_dengji").Checked = True If dtp1.value= Nothing Then If dtp2.value=Nothing Then e.Form.Controls("Table5").Table.Filter="情况说明=\'已入院\'" Else e.Form.Controls("Table5").Table.Filter="情况说明=\'已入院\'" & "登记日期< #" & dtp2.value & "#" End If Else If dtp2.value=Nothing Then e.Form.Controls("Table5").Table.Filter="情况说明=\'已入院\'" & "登记日期> #" & dtp1.value & "#" Else If dtp1.value>dtp2.value Then MessageBox.Show("统计开始时间不能晚于统计截止时间,请重新填写统计开始时间或截止时间","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning) Return Else e.Form.Controls("Table5").Table.Filter="情况说明=\'已入院\'" & "登记日期> #" & dtp1.value & "#" & "登记日期< #" & dtp2.value & "#" End If End If End If End If If e.Form.Controls("Rdo_ruyuan").Checked = True If dtp1.value= Nothing Then If dtp2.value=Nothing Then e.Form.Controls("Table5").Table.Filter="情况说明=\'已入院\'" Else e.Form.Controls("Table5").Table.Filter="情况说明=\'已入院\'" & "预约日期< #" & dtp2.value & "#" End If Else If dtp2.value=Nothing Then e.Form.Controls("Table5").Table.Filter="情况说明=\'已入院\'" & "预约日期> #" & dtp1.value & "#" Else If dtp1.value>dtp2.value Then MessageBox.Show("统计开始时间不能晚于统计截止时间,请重新填写统计开始时间或截止时间","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning) Return Else e.Form.Controls("Table5").Table.Filter="情况说明=\'已入院\'" & "预约日期> #" & dtp1.value & "#" & "预约日期< #" & dtp2.value & "#" End If End If End If End If Else If e.Form.Controls("Rdo_dengji").Checked = True If dtp1.value= Nothing Then If dtp2.value=Nothing Then e.Form.Controls("Table5").Table.Filter="" Else e.Form.Controls("Table5").Table.Filter="登记日期< #" & dtp2.value & "#" End If Else If dtp2.value=Nothing Then e.Form.Controls("Table5").Table.Filter="登记日期> #" & dtp1.value & "#" Else If dtp1.value>dtp2.value Then MessageBox.Show("统计开始时间不能晚于统计截止时间,请重新填写统计开始时间或截止时间","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning) Return Else e.Form.Controls("Table5").Table.Filter="登记日期> #" & dtp1.value & "#" & "登记日期< #" & dtp2.value & "#" End If End If End If End If If e.Form.Controls("Rdo_ruyuan").Checked = True If dtp1.value= Nothing Then If dtp2.value=Nothing Then e.Form.Controls("Table5").Table.Filter="" Else e.Form.Controls("Table5").Table.Filter="预约日期< #" & dtp2.value & "#" End If Else If dtp2.value=Nothing Then e.Form.Controls("Table5").Table.Filter="预约日期> #" & dtp1.value & "#" Else If dtp1.value>dtp2.value Then MessageBox.Show("统计开始时间不能晚于统计截止时间,请重新填写统计开始时间或截止时间","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning) Return Else e.Form.Controls("Table5").Table.Filter="预约日期> #" & dtp1.value & "#" & "预约日期< #" & dtp2.value & "#" End If End If End If End If 错误提示如下图: 到底错在哪儿?谢谢!
[此贴子已经被作者于2013-12-9 11:21:30编辑过]
|
-- 作者:Bin -- 发布时间:2013/12/9 11:14:00 -- e.Form.Controls("Table5").Table.Filter="情况说明=\'已入院\'" & "登记日期< #" & dtp2.value & "#" 你几乎所有的条件都少了 AND 两个同时成立的条件应该使用AND连接 e.Form.Controls("Table5").Table.Filter="情况说明=\'已入院\' and 登记日期< #" & dtp2.value & "#"
|
-- 作者:cqlwsam -- 发布时间:2013/12/9 11:15:00 -- 哦。低级错误,不应该。谢谢! |