"and" 前后都没有空格
如果在字符串里有"应该用4个"
实际上sql语句字符串用的是单引号

解决方案 »

  1.   

    这个SQL语句写的有点莫名其妙,不知道你想要干什么。
    而且如果看这语句似乎连VB的if.... then用的也不算太好,因为where后面的条件写出来的格式跟if 后面的条件应该是一个格式的(几乎所有语言都是同一个格式)。
    你可以在这条语句后面加上一句:
    Text1.Text=strsql1
    看看你写的这是什么,你就会知道你为什么错了。另外,那个等号(=)应该换成=,在SQL语句中字符串用单引号
      

  2.   

    strsql1 = "select * from box1 where 1(这个1什么意思?)=1 " & Trim(ss) & "and"(逻辑运算符?) & "DateDiff("2w", Now, "返回日期")"
      

  3.   

    and 前后加空格 你的ss应该是生成的条件把 ,1=1是为了ss为空时查询不会出错把 。添加断点后看看str的内容是什么就可以了
      

  4.   

    strsql1 = "select * from box1 where 1='" & Trim(ss) & "'and DateDiff("2w", Now, "返回日期")"