2017-04-06 4 views
0

Je veux mettre en évidence un enregistrement particulier dans un datagrid lorsque l'enregistrement a été recherché. C'est comme une recherche rapide, l'utilisateur écrit le nom et l'enregistrement est instantanément trouvé. Jusqu'à présent, je n'ai qu'une flèche pointant vers le disque, mais j'ai besoin d'être mis en évidence complètement. Des images sont fournies pour plus d'explications. code:Surbrillance record dans Datagrid grâce à une recherche rapide

Private Sub txtQuickSearch_Change() 
Dim varBookmark As Variant 
     With StudentTable 
       varBookmark = .Bookmark 
      If (.SelBookmarks.Count <> 0) Then 
       .SelBookmarks.Remove 0 
      End If 
       Adodc1.Recordset.MoveFirst 

       Adodc1.Recordset.Find "[Last Name] like '" & txtQuickSearch.Text & "'" 

      If frmStudents.Adodc1.Recordset.BOF Then 

       .SelBookmarks.Add Adodc1.Recordset.Bookmark  
      End If 
     End With 
End Sub 

This is how it is now

This is how i would like it

+0

Je pense que vous voulez 'Si non frmStudents.Adodc1 .Recordset.BOF Then' –

+0

quand je fais cela, il me donne cette erreur 'Run-time error '3021': BOF ou EOF est vrai, ou l'enregistrement en cours a été supprimé. L'opération demandée nécessite un enregistrement en cours. »@JimHewitt –

+0

' Si pas frmStudents.Adodc1.Recordset.BOF Et pas frmStudents.Adodc1.Recordset.EOF Then' –

Répondre

0

Hewitt @ Jim, résolu le problème, je devais ajouter cette déclaration: If Not frmStudents.Adodc1.Recordset.BOF And Not frmStudents.Adodc1.Recordset.EOF Then