=========================================
      MsgString = "查询到" & mrs.RecordCount & _
         " 条记录 "
   End If
ExecuteSQL_Exit:
      Set mrs = Nothing
      Set cnn = Nothing
   Exit Function
=========================================
在function退出前Set mrs = Nothing,返回的Recordset当然有问题了,取消这句

解决方案 »

  1.   


    你这样认为
    那如何退出RECORDSET呢
    应该可以吧与FUNCTION过程没关
      

  2.   

    '返回recordset
    mrs.Open Trim$(SQL), cnn, adOpenStatic, adLockBatchOptimistic   '静态打开
    set mrs.ActiveConnection = Nothing  '取消连接
    cnn.close  '关闭连接
    Set ExecuteSQL = mrs  '返回recordset'更新recordset
    cnn.open .........   '打开连接
    set set mrs.ActiveConnection=cnn
    mrs.UpdateBatch
    cnn.close
      

  3.   

    '更新recordset
    cnn.open .........   '打开连接
    set set mrs.ActiveConnection=cnn
    mrs.UpdateBatch
    set mrs.ActiveConnection = Nothing  '取消连接
    cnn.close漏了点冬冬,错误处理自己加 :-)
      

  4.   

    If mrc.EOF = True Then最好写成 If mrc.EOF Then