IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Chercher Enregistrement suivant


Sujet :

VBA Access

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 139
    Par défaut Chercher Enregistrement suivant
    Bonjour à tous,
    question toute bête, mais ca me fait mal à la tête de réfléchir
    J'ai pour clé dans une de mes tables un numéro que j'incrémente (pas d'utilisation d'autoincrémente donc), et je voudrais savoir quelle est la requête a utiliser pour trouver le numéro de clé suivant à celui passé en paramétre...
    Par exemple, imaginons un fichier client:

    1 AA
    2 BB
    4 CC

    je voudrais une requête à laquelle je passe id_client=2 et qui me renvoi le numéro suivant, c'est à dire ici le 4...
    Je me doute que ca ne doit pas être bien dur mais bon,
    Merci beaucoup

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Vas regarder dans la fonction DMax en VBA.

    Starec

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 139
    Par défaut
    je ne vois pas en quoi cela m'est utile, désolé
    je ne cherche pas la plus grande valeur, mais la suivante uniquement...
    Alors peut-etre est-ce possible grace a ce que tu m'as donné, mais je ne vois pas comment...

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Si tu incrémentes toi même, obligatoirement la derniére est la plus grande, donc avec DMax tu la récupére, et +1 pour avoir la suivante, je ne comprends pas le problème.

    On ne trie pas une table, ce sont les requêtes qui trient.

    Imagine que tu tris ta table, le dernier ne sera pas le plus grand.

    Starec

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 139
    Par défaut
    Rebonjour starec et merci de t'intéresser à mon problème...
    Je vais essayer de t'expliquer le pb avec un exemple plus concret...
    Je gére une base de client, a chaque fois qu'on ajoute un client, la clé primaire le concernant prend la valeur suivante, logique...
    J'ai un formulaire pour visionner tous les clients, ainsi qu'une fléche (un bouton) me permettant de parcourir mes clients...
    Mais voila que mettre sur le code de la fléche pour qu'il me prenne le client suivant, pas le dernier, le suivant selon la clé primaire...
    J'ai 5 clients A B C D E,
    1 A
    2 B
    3 C
    4 D
    5 E
    Par mauvaise manip, le client 3 est supprimé par exemple, il me reste donc
    1 A
    2 B
    4 D
    5 E

    Et donc je veux savoir comment faire quand je suis sur la fiche de mon client B et que je clique sur la fléche pour passer au client suivant (le D), comment récupérer le 4 quoi, la valeur de la clé primaire suivante à celle en cours en fait...
    J'éspére avoir été plus clair, merci

  6. #6
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Localisation : Sénégal

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 229
    Par défaut
    Citation Envoyé par pafi76
    ... quand je suis sur la fiche de mon client B et que je clique sur la fléche pour passer au client suivant (le D), comment récupérer la valeur de la clé primaire suivante à celle en cours en fait...
    Je supposes que tes fiches sont représentées par un formulaire et que ta flèche et un bouton de navigation entre tes enregistrements.

    Si tel est le cas, si ton formulaire est dépendant, il n'ya aucun problème.

    Si par contre c'est autre chose, tu peux rechercher la clé suivante.

    Quelle est ta situation?

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 139
    Par défaut
    je dois chercher la clé suivante, grâce a une requéte sql...

  8. #8
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Localisation : Sénégal

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 229
    Par défaut
    Il ya plusieurs méthode pour ca.

    Exemple avec DLookUp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Dim CleSuivant as Variant, b as Boolean, i as integer
    b=false
    i=1
    do while not b
          clesuivant=nz(Dlookup("IdCle","TaTable","(Idcle= " & me.ToChampCle+i & ")"),0)
          If CleSuivant <> 0 then
                  b=true
          Else
                i=i+1
          end if 
    Loop
    msgbox "Clé suivant = " & CleSuivant
    Tu remplaces les variables du DLookup

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 139
    Par défaut
    Oui merci, j'avais pensé a un truc dans le genre,
    merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] chercher le 2ème enregistrement suivant un critère
    Par nounous54 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 31/12/2013, 13h49
  2. Requête qui exclue des enregistrements suivants des valeurs
    Par paflolo dans le forum Langage SQL
    Réponses: 4
    Dernier message: 15/02/2006, 17h38
  3. supprime enregistrement suivant critere
    Par eloman dans le forum Requêtes
    Réponses: 2
    Dernier message: 27/01/2006, 14h09
  4. sous-formulaire et enregistrement suivant
    Par Cantalou dans le forum Access
    Réponses: 3
    Dernier message: 12/10/2005, 18h05
  5. Enregistrement suivant
    Par Remax dans le forum Access
    Réponses: 1
    Dernier message: 29/10/2004, 17h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo