在数据环境下创建一个salesdate对象 在使用它的filter 时出现的问题
 Drug_store.rsSalesDate.Filter = "Datetime1 Like ' " & cmbDate.Text & "%'"
其中cmbDate.Text 是Combox的文本 datetime1 是leechdomsell中的DATETIM属性,上式的问题表现为运行时会出现过滤器无法打开。
上式的意图是打开在COMBOX中关于2002-12-  格式的并通过过滤器显示出这段时期的数据
关于在MSDN 2002 中recorderset的相关文档对于filter 所说的一样 like 只支持% ,* 型的通配符
但上面的一句使终无法运行。请问大家,有什么解决方法,或技巧
  谢谢了.......!!!!

解决方案 »

  1.   

    Datetime1 是什么类型?Like 仅支持字符型。
      

  2.   

    你通过这种方式是不行的(DATETIME型不是varchar型,不能这么用),你如果需要这样做的话需要把起止时间输入
    Drug_store.rsSalesDate.Filter = "Datetime1 >= ' " & cdate(format(2002-12-01,"yyyy-mm-dd ")) & "' and Datetime1 < ' " & cdate(format(2003-01-01,"yyyy-mm-dd ")) & "'"
      

  3.   

    //datetime1 是leechdomsell中的DATETIM属性
    看不懂~
      

  4.   

    更正下
    Drug_store.rsSalesDate.Filter = "Datetime1 >=#2002-12-01# and Datetime1 < #2003-01-01#"你只要把2002-12-01和2003-01-01换成对应的就可以了。其实方式有很多了...
      

  5.   

    刚才吃饭去了,接着来:
    Drug_store.rsSalesDate.Filter = "Datetime1 >=#" & Format(cmbDate.Text,"yyyy-mm") & " -1# and <#" & Format(DateAdd("m",1,cmbDate.Text & "1")-1,"yyyy-mm-dd") & "#"
      

  6.   

    我的目的就是要从指定的CmbDate.text区中获得过滤条件。就象下面的形式
    Drug_store.rsSalesDate.Filter = "Datetime1 Like ' " & cmbDate.Text & "%'"
    我查MSDN中关于Filter的描述。like 可以检索日期型需加上# 但加上#后还是不行。
      

  7.   

    下面的这句可以运行。当然什么也不会检索出来。
    Drug_store.rsSalesData.Filter = "datetime1 like #2001/10/02#"
      

  8.   

    如果格式是这样的cmbDate.text 为"yyyy-mm-nn"下面格式中就不会出现问题
    Drug_store.rsSalesData.Filter = "Datetime1 Like #" & cmbDate.Text & "#"
    但只能检索指定日期的内容。无法完成象yyyy-mm- 格式的全部过滤。
      

  9.   

    如果你在 cmbDate 中的是 2002-12- 格式:
    Drug_store.rsSalesDate.Filter = "Datetime1 >=#" & cmbDate.Text & "1# and Datetime1<=#" & Format(DateAdd("m",1,cmbDate.Text & "1")-1,"yyyy-mm-dd") & "#"最终生成字符串 "Datetime1 >= #2002-12-1# and Datetime1<=#2002-12-31#"