0

我有一个返回 a 的 VBA 函数,它RecordSetRecordSet子例程中使用。函数本身存在于一个模块中。虽然函数本身返回RecordSet成功,但我有两个问题:

  1. 如果我尝试关闭函数中的连接,则会导致应用程序失败
  2. 如果我在使用后尝试关闭RecordSet子程序中的 ,会导致应用程序失败

那么,如何在返回记录集后关闭函数中的连接并在使用后关闭记录集呢?

我的函数建立连接,打开它并执行查询。

4

2 回答 2

0

不要把它作为一个函数来做。模制成子程序

于 2013-10-28T19:38:24.997 回答
0

使用记录集后,必须将其关闭。

当记录集处于活动状态时,它会消耗资源。使用记录集后,您应该释放它正在使用的内存,以便计算机的其他对象可以使用它们。这是通过将 Nothing 分配给 Recordset 对象来完成的。这是一个例子:

'Clean Up
rsTemp.Close 'closing recordset
Set rsTemp= Nothing ' free the memory

您也可以在最后关闭连接。

If con.State = adStateOpen Then
 con.Close
End If

If Not con Is Nothing Then Set con = Nothing
于 2013-10-25T22:23:40.260 回答