Описание
Возвращает значение, показывающее, поддерживает ли объект Recordset закладки, которые устанавливаются с помощью свойства Bookmark.
Значение
Возвращаемое значение имеет тип Boolean и содержит значение True, если объект поддерживает использование закладок.
Замечания
Значение свойства Bookmarkable следует проверить перед попыткой установить или прочитать значение свойства Bookmark.
Для объекта Recordset, созданного исключительно на основе таблиц ядра базы данных Microsoft Jet, свойство Bookmarkable имеет значение True, и допускается использование свойства Bookmark для объектов Recordset. Например, не допускается использование закладок в любом объекте Recordset, созданном на основе присоединенной таблицы Paradox, в которой не определен ключ.
Пример
Следующая программа использует свойства Bookmark и Bookmarkable для запоминания позиции записи в объекте Recordset и возвращения к этой записи.
Sub BookmarkX() Dim dbsNorthwind As Database Dim rstCategories As Recordset Dim strMessage As String Dim intCommand As Integer Dim varBookmark As Variant Set dbsNorthwind = OpenDatabase("Борей.mdb") Set rstCategories = dbsNorthwind.OpenRecordset("Типы", dbOpenSnapshot) With rstCategories If .Bookmarkable = False Then Debug.Print "Объект Recordset не поддерживает закладки!" Else ' Заполняет объект Recordset. .MoveLast .MoveFirst Do While True ' Отображает сведения о текущей записи ' и принимает данные от пользователя. strMessage = "Категория: " & !Категория & _ " (запись " & (.AbsolutePosition + 1) & _ " из " & .RecordCount & ")" & vbCr & _ "Введите команду:" & vbCr & _ "[1 - следующая / 2 - предыдущая /" & vbCr & _ "3 - установить закладку / 4 - перейти на закладку]" intCommand = Val(InputBox(strMessage)) Select Case intCommand ' Переход вперед или назад, перехват ' меток BOF или EOF. Case 1 .MoveNext If .EOF Then .MoveLast Case 2 .MovePrevious If .BOF Then .MoveFirst ' Сохраняет закладку текущей записи. Case 3 varBookmark = .Bookmark ' Переходит на запись, отмеченную ' сохраненной закладкой. Case 4 If IsEmpty(varBookmark) Then MsgBox "Нет установленной закладки!" Else .Bookmark = varBookmark End If Case Else Exit Do End Select Loop End If .Close End With dbsNorthwind.Close End Sub