Я передаю таблицу в текущей базе данных в набор записей с 2 измерениями. В настоящее время:
Public Sub MySub(obj As Variant)
Dim dbs As DAO.Database
Dim tbl As DAO.Recordset
Set dbs = CurrentDb
Set tbl = dbs.OpenRecordset("TABLE")
tbl.MoveLast
Records = tbl.GetRows(tbl.RecordCount)
Stop
...
End Sub
Проходя в моем окне локальных пользователей (и проверяя в непосредственном окне), я вижу, что tbl.RecordCount = 1074
, но Записи все еще только получают активную запись со всеми полями, т.е. Records
Тип: Variant(0 to 37, 0 to 0)
.
Я могу выполнить аналогичный подход при сохранении запроса. Я также пробовал синтаксис:
Set tbl = dbs.OpenRecordset("TABLE",dbOpenDynaset)
И
Set tbl = dbs.OpenRecordset("TABLE",dbOpenTable)
У первого была та же проблема, а у второго возвращена ошибка времени выполнения '3219'.
Редактировать: пример GetRows с Query (см. Комментарии)
Set dbs = CurrentDb
Set rsQuery = dbs.OpenRecordset("QUERY", dbOpenDynaset)
varRecords = rsQuery.GetRows(rsQuery.RecordCount)