修改你的代码,应该改为:
Dim t As Table = CurrentTable
Dim dt1 As Date = e.Form.Controls("DateTimePicker1").Value
Dim dt2 As Date = e.Form.Controls("DateTimePicker2").Value
If e.Form.Controls("DateTimePicker1").Value Is Nothing OrElse e.Form.Controls("DateTimePicker2").Value Is Nothing Then
MessageBox.Show("请输入开始日期和结束日期")
Return
End If
If dt1 > dt2 Then
MessageBox.Show("开始日期不能晚于结束日期")
Return
End If
Dim filter As String = "日期" & " >= #" & dt1 & "# And " & "日期" & " <= #" & dt2 & "#"
t.Filter = filter
你原来根据选定列进行筛选,筛选后光标回到第一列,第一列又不是日期列,自然就出错了。
[此贴子已经被作者于2012-3-13 16:23:51编辑过]