我有一个返回RecordSet
的VBA函数,并且在子例程中使用了这个RecordSet
。该函数本身存在于一个模块中。虽然函数本身成功返回RecordSet
,但我有两个问题:
RecordSet
,则会导致应用程序失败那么,如何在返回记录集并在使用后关闭记录集后关闭函数中的连接?
我的函数建立连接,打开它并执行查询。
答案 0 :(得分:0)
使用记录集后,必须将其关闭。
当记录集处于活动状态时,它会消耗资源。使用记录集后,您应该释放它正在使用的内存,以便它们可以用于计算机的其他对象。这是通过向Recordset对象赋予Nothing来完成的。这是一个例子:
'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
答案 1 :(得分:0)
不要将其作为一种功能。模块化为子程序