sqlstring4="select into tbst4 ....."
set tbst4=dbst.OpenRecordset(sqlstring4)         '这条语句是生成一个查询记录集,而不是在数据库中生成一个数据表
.....
...

解决方案 »

  1.   

    你应该用中间表的方法,
    set tbst4=dbst.openrecordset("select …… into …………")
      

  2.   

    用上面 RickeyLv 和 kosisiyo 的方法还是不能解决问题:
    sqlstring4 = "select tbSampleData.imex,tbSampleData.ctype,tbresult.ptype, " + _
            " tbresult.pest, " + _
            " count(tbresult.pest) as pestnum " + _
            " from  tbSampleData " + _
            " inner  JOIN tbresult on tbSampleData.labno = tbresult.labno " + _
            " into tbTempSumPest " + _
            " group by tbSampleData.imex,tbSampleData.ctype, "+ _
            " tbresult.ptype,tbresult.pest"    Set tbst4 = dbst.OpenRecordset(sqlstring4)上面的 into 语句放在那里(在 from 前面、group 前面和句子末尾)都不行。
    在 from 前面的错误提示是 invalid operation ,在 group 前面和句子末尾是 missing operator 。
      

  3.   

    你可以使用sql的复合查询:既使用sql的查询语句里套子查询。
    格式:
    select * from (select * from XXX where ...)
    最好你使用acess自己带的sql编辑器,很好用。我写的一些sql复杂查询都是用它来完成的。