Использование закладок
Область применения: Access 2013, Office 2013
Часто бывает полезно вернуться непосредственно к определенной записи после перемещения по набору записей без необходимости прокручивать каждую запись и сравнивать значения. Например, если вы пытаетесь найти запись с помощью метода Find , но поиск не возвращает записи, вы автоматически помещаетсяе на любой конец набора записей. Если ваш поставщик поддерживает их, закладки можно использовать для пометки вашего места перед использованием метода Find , чтобы вы могли вернуться в свое расположение. Закладка — это значение типа Variant , которое однозначно идентифицирует запись в объекте Recordset .
Для фильтрации по выбранному набору записей можно также использовать переменный массив закладок с помощью метода Фильтра набора записей. Дополнительные сведения об этом методе см. в разделе Фильтрация результатов в разделе Работа с наборами записей далее в этой главе.
С помощью свойства Bookmark можно получить закладку для записи или задать текущую запись в объекте Recordset запись, определяемую допустимой закладкой. Следующий код использует свойство Bookmark для установки закладки, а затем возврата к записи с закладкой после перехода к другим записям. Чтобы определить, поддерживает ли набор записей закладки, используйте метод Supports .
'BeginBookmarkEg
Dim varBookmark As Variant
Dim blnCanBkmrk As Boolean
objRs.Open strSQL, strConnStr, adOpenStatic, adLockOptimistic, adCmdText
If objRs.RecordCount > 4 Then
objRs.Move 4 ' move to the fifth record
blnCanBkmrk = objRs.Supports(adBookmark)
If blnCanBkmrk = True Then
varBookmark = objRs.Bookmark ' record the bookmark
objRs.MoveLast ' move to a different record
objRs.Bookmark = varBookmark ' return to the bookmarked (sixth) record
End If
End If
'EndBookmarkEg
Метод Supports рассматривается более подробно позже.
За исключением клонированных наборов записей, закладки являются уникальными для набора записей , в котором они были созданы, даже если используется та же команда. Это означает, что вы не можете использовать закладку , полученную из одного набора записей , для перехода к той же записи во втором наборе записей, открытом с помощью той же команды.