Problème de codage VBA sous ACCESS 2000 [Résolu]

Signaler
Messages postés
9
Date d'inscription
mercredi 28 janvier 2009
Statut
Membre
Dernière intervention
15 juillet 2009
-
Messages postés
9
Date d'inscription
mercredi 28 janvier 2009
Statut
Membre
Dernière intervention
15 juillet 2009
-
bonjour
je suis sous windows 2000 avec access 2000.
Ma version ne reconnait pas la ligne suivante  dans le code ci-desous:
"Nomatch", par quoi je peux remplacer ce mot ??

merci de votre aide
bmo

Private Sub Form_Activate()
Dim Rstloc As Recordset
    Dim requete As String
    '----- Localités ------
    Set Rstloc = CurrentDb.OpenRecordset("clients")
    Rstloc.Index = "codecli"
      Rstloc.Seek "=", Me!Code_client
        If Not Rstloc.NoMatch Then
            Me!test = "OK"
            Me!test2 = Rstloc!Zone
        End If
End Sub

3 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
74
Pour la requète, ce serait plutôt
   ... Where codecli = '" & Me!Code_client & "'"
les ' sont les séparateurs pour les chaines.
Si "codecli" est numérique, ne pas mettre de '
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
74
Salut
Je ne suis pas habitué à cette syntaxe, mais question : Si tu recherches un enregistrement, pourquoi ne pas faire cette recherche grace à une requète, plutôt que de charger toute la table dans le Recordset et de rechercher l'enregistrement à l'intérieur ?   Set Rstloc CurrentDb.OpenRecordset("Select Zone From clients Where ??? 'codecli'")
et pour lire les résultats :
   With Rstloc 
      .MoveFirst
      Do While Not .EOF
         Debug.Print , .Fields("Zone")
         .MoveNext
         DoEvents
      Loop
   End With

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
9
Date d'inscription
mercredi 28 janvier 2009
Statut
Membre
Dernière intervention
15 juillet 2009

merci beaucoup pourvotre aide