Добрый день!
Прошу помощи в следующем вопросе.
Делаю запрос из книги Эксель, находясь в ней, используя ADODB Recordset.
Все отрабатывает правильно, но возникает следующая ситуация: с каждым запросом количество оперетивной памяти, выделяемое под Эксель растет неимоверно, не пойму почему. Например после первого запроса, объем памяти где 33 МБ, но после 5го запуска он уже 320 МБ... Понятно что нифига не работает, все висит. Когда выхожу из приложения, память очищается. Вот код:
...
dbConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ActiveWorkbook.FullName & _
";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"""
Set dbConnection = New ADODB.Connection
dbConnection.Open dbConnectionString
Set rs = New Recordset
rs.Open sQuery, dbConnection, adOpenDynamic
...
dbConnection.Close
Set rs = Nothing
Соеденение закрываю. С объектной переменной снимаю значение.
Что может быть еще? Может весь рекордсет продолжает висеть в оперативке, а это 65000 строк.
Знаю что задача может
быть связана с Эксель, но здесь мне уже кучу раз помагали, так что ... :) Да и ситуация, как мне кажется, возникает не из-за экселя, а из-за моего некорректного использования Recordset'a ADODB.