J'ai un formulaire de liste dans Microsoft Access 2007, et j'essaye de faire un bouton qui cherchera l'un des champs pour une phrase donnée. Le problème est que le champ que j'essaie de chercher est un champ de mémo, et je veux habituellement garder les enregistrements triés (par un champ de compte). Ceci tronque mon champ de mémo à 255 caractères et rend le reste du champ inaccessible. Ainsi, j'ai été en train de désactiver la propriété "OrderByOn" du formulaire que je recherche (ou en définissant "OrderBy" à "") lors de l'événement Form_Open du formulaire de recherche, qui semble correctement dégrouper mes données et rend le champ mémo entièrement visible. Toutefois, lorsque j'essaie de rechercher, j'obtiens parfois l'erreur "Microsoft Visual Basic Erreur d'exécution '1006': Inconnu" lorsqu'il arrive à la ligne FindNext. Je pense que j'obtiens l'erreur si le terme de recherche n'est pas trouvé dans les premiers 255 caractères des enregistrements entre l'enregistrement en cours et la fin du jeu d'enregistrements. Ceci est le code pour le formulaire de recherche:Erreur d'exécution '1006': Inconnu
Private Sub Form_Open(Cancel As Integer)
[Forms]![MyForm]![MySubform].[Form].OrderBy = ""
'[Forms]![MyForm]![MySubform].[Form].OrderByOn = False
End Sub
Private Sub Search_Click()
Dim vDescription As String
Dim r As Recordset
vDescription = ""
If Me![Description] <> "" Then vDescription = "[MyFieldName] LIKE('*' + '" & Me![Description] & "' + '*')"
If Not (vDescription = "") Then
Set r = [Forms]![MyForm]![MySubform].[Form].Recordset
> r.FindNext (vDescription)
If r.NoMatch Then
r.MoveFirst
r.FindNext (vDescription)
If r.NoMatch Then
MsgBox ("No match found.")
r.MoveFirst
End If
End If
End If
End Sub
Je ne trouve aucun résultat de recherche pour ce message d'erreur, qui semble étrange. Pourquoi ai-je une erreur? Est-ce que j'utilise le jeu d'enregistrements correctement? Dois-je traiter différemment OrderBy/OrderByOn?
Quelque chose en particulier que je devrais rechercher dans vDescription? En ce moment c'est '[MyFieldName] LIKE ('*' + 'StuffITypedIn' + '*')'. Et oui, les parenthèses quand je n'en ai pas besoin est une mauvaise habitude. Je me suis débarrassé d'eux, même erreur. – serme