Propriedade Recordset.Bookmarkable (DAO)
Aplica-se ao: Access 2013, Office 2013
Retorna um valor que indica se um objeto Recordset suporta marcadores, que pode ser definido usando a propriedade Bookmark.
Sintaxe
expressão . Bookmarkable
expressão Uma variável que representa um objeto do Recordset.
Comentários
Verifique a definição da propriedade Bookmarkable de um objeto Recordset antes de você tentar definir ou verificar a propriedade Bookmark.
Para objetos Recordset baseados inteiramente em tabelas do mecanismo de banco de dados do Microsoft Access, o valor da propriedade Bookmarkable é True e você pode usar indicadores. No entanto, outros produtos do banco de dados podem não oferecer suporte aos marcadores. Por exemplo, você não pode usar indicadores em nenhum objeto Recordset com base em uma tabela vinculada Paradox que não tenha nenhuma chave primária.
Exemplo
Este exemplo usa as propriedades Bookmark e Bookmarkable para permitir que o usuário sinalize um registro em um Recordset para retornar a ele mais tarde.
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("Northwind.mdb")
Set rstCategories = _
dbsNorthwind.OpenRecordset("Categories", _
dbOpenSnapshot)
With rstCategories
If .Bookmarkable = False Then
Debug.Print "Recordset is not Bookmarkable!"
Else
' Populate Recordset.
.MoveLast
.MoveFirst
Do While True
' Show information about current record and get
' user input.
strMessage = "Category: " & !CategoryName & _
" (record " & (.AbsolutePosition + 1) & _
" of " & .RecordCount & ")" & vbCr & _
"Enter command:" & vbCr & _
"[1 - next / 2 - previous /" & vbCr & _
"3 - set bookmark / 4 - go to bookmark]"
intCommand = Val(InputBox(strMessage))
Select Case intCommand
' Move forward or backward, trapping for BOF
' or EOF.
Case 1
.MoveNext
If .EOF Then .MoveLast
Case 2
.MovePrevious
If .BOF Then .MoveFirst
' Store the bookmark of the current record.
Case 3
varBookmark = .Bookmark
' Go to the record indicated by the stored
' bookmark.
Case 4
If IsEmpty(varBookmark) Then
MsgBox "No Bookmark set!"
Else
.Bookmark = varBookmark
End If
Case Else
Exit Do
End Select
Loop
End If
.Close
End With
dbsNorthwind.Close
End Sub