Estou procurando uma maneira de criar um formulário de folha de dados na memória. E gosto da ideia de usar um conjunto de registros desconectado. Mas me deparei com o problema de travamento do aplicativo após reatribuir o conjunto de registros desconectado ao formulário. No stackoverflow, fui solicitado por uma postagem do Sr. HK1 , onde ele escreveu o seguinte:
Se você obtiver o conjunto de registros de uma tabela (mesmo que seja uma tabela vazia) e desconectá-lo, poderá solucionar esse problema.
Mas como fazer isso? No caso de DAO.Recordset recebo o erro: A operação não é suportada para este tipo de objeto. Tentei todos os tipos de conjunto de registros, mas não ajudou:
Sub testDynaset()
Dim rs As dao.Recordset
Set rs = CurrentDb.OpenRecordset("MyLocalTable", dbOpenDynaset)
rs.Connection.Close ' << error: Operation is not supported for this type of object
End Sub
Sub testForwardOnly()
Dim rs As dao.Recordset
Set rs = CurrentDb.OpenRecordset("MyLocalTable", dbOpenForwardOnly)
rs.Connection.Close ' << error: Operation is not supported for this type of object
End Sub
Sub testOpenSnapshot()
Dim rs As dao.Recordset
Set rs = CurrentDb.OpenRecordset("MyLocalTable", dbOpenSnapshot)
rs.Connection.Close ' << error: Operation is not supported for this type of object
End Sub
Sub testOpenTable()
Dim rs As dao.Recordset
Set rs = CurrentDb.OpenRecordset("MyLocalTable", dbOpenTable)
rs.Connection.Close ' << error: Operation is not supported for this type of object
End Sub
No caso do ADODB.Recordset, não sei como obtê-lo de uma tabela nativa local ou vinculada do MS ACCESS. Por favor ajude!