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

Access Discussion :

2 valeurs possibles pour une variable : méthode Seek


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Responsable de service informatique
    Inscrit en
    Juin 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 61
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 28
    Points : 28
    Points
    28
    Par défaut 2 valeurs possibles pour une variable : méthode Seek
    Bonjour à tous,

    Comment puis-je attribuer 2 valeurs bien définies à une variable dans du code VBA.
    Cette variable est ensuite utilisée pour une recherche par la méthode Seek.

    J'ai essayé la déclaration suivante :
    MaVariable = "4" Or "14"
    ou bien MaVariable = "4" Or MaVariable = "14"
    mais, à chaque fois, seule la valeur "14" est prise en compte.

    Commet puis-je donc lui spécifier que "4" ou "14" est en soi le même critère ?

    J'espère avoir été claire, et merci de votre réponse,

  2. #2
    Membre actif Avatar de Gary_Stoupy
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    244
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 244
    Points : 232
    Points
    232
    Par défaut
    Alors la, c'était pas super super clair...
    Perso, je ferais un tableau avec tes 2 valeurs

    Mais pour être totalement honnête, je ne vois pas très bien ou tu veux en venir
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Responsable de service informatique
    Inscrit en
    Juin 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 61
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 28
    Points : 28
    Points
    28
    Par défaut
    Bon , je m'en doutais ... désolée de ce manque de clarté.

    Avant de faire une recherche par la méthode Seek, je définis une valeur pour une des zones de l'enregistrement à rechercher (en l'occurence la zone "tf_CodeGrade") rentrant dans l'index de la table :

    1. If MonCode >=7000 and MonCode < 8000 then
    2. MonGrade = "4" or "14"
    3. Else
    4. etc...
    5. MaTable.index = "PrimaryKey"
    6. MaTable.Seek "=", MonPasseport, MonGrade


    Voilà en gros le code utilisé (rien de plus simple ...)

    Mais le problème, c'est qu'à chaque fois, MonGrade est systématiquement = à 14 ...

    J'espère que cest plus clair ... Merci

  4. #4
    Membre actif Avatar de Gary_Stoupy
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    244
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 244
    Points : 232
    Points
    232
    Par défaut
    a mon humble avis, il faut passer par 2 seek
    tu chercher une premiere fois avec MonGrade = 4. Si il trouve rien tu cherches avec MonGrade = 14
    sinon je vois pas, ca dépasse mes connaissances
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

  5. #5
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 316
    Points : 367
    Points
    367
    Par défaut
    Bonjour,

    Voir l'aide en ligne de Seek si on peut faire cela.

    a+

  6. #6
    Nouveau membre du Club
    Femme Profil pro
    Responsable de service informatique
    Inscrit en
    Juin 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 61
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 28
    Points : 28
    Points
    28
    Par défaut
    Je te remercie Gary,

    J'y avais pensé, mais je souhaitais "alléger" le code en évitant ce 2ème Seek.
    Il doit quand même exister une fonction permettant d'attribuer 2 valeurs distinctes à une même variable ...

  7. #7
    Membre actif Avatar de Gary_Stoupy
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    244
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 244
    Points : 232
    Points
    232
    Par défaut
    Si jamais quelqu'un a la réponse, je suis preneur mais bon, ce serait bien la première fois que je vois (malgré les quelques langages que je connais)
    (\ _ /)
    (='.'=) Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant.

  8. #8
    Nouveau membre du Club
    Femme Profil pro
    Responsable de service informatique
    Inscrit en
    Juin 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 61
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 28
    Points : 28
    Points
    28
    Par défaut
    Afin de ne pas surcharger le formum, je met "résolu".
    Si j'ai la réponse, je ne manquerai pas de te la faire connaître.

    Merci encore et à bientôt,

  9. #9
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    11 987
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 11 987
    Points : 24 540
    Points
    24 540
    Par défaut
    Bonjour,

    Précision sur Seek Findfirst et autre recherche.

    Ces méthodes permettent de trouver le premier enregistrement correspondant au critère.

    Dans le cas ou tu souhaites remonter plus d'un enregistrement soit tu utilise une requete soit tu lance plusieurs fois la recherche.

    Dans certain cas tu connais un critère approximatif (soit 4 soit 14) dans ce cas essaye l'opérateur In(..,..) mais avec la méthode findfirst de DAO ou Find de ADO.

    Espérant t'avoir éclairé sur les mécanismes de la recherche.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

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

Discussions similaires

  1. Somme de valeurs possibles d'une variable
    Par Mahougnon dans le forum Requêtes
    Réponses: 1
    Dernier message: 14/10/2014, 17h27
  2. Liste de valeurs possibles pour une colonne
    Par eagleleader dans le forum Développement
    Réponses: 4
    Dernier message: 17/09/2012, 07h28
  3. Valeurs Multiples pour une variable
    Par backdraf dans le forum Développement
    Réponses: 5
    Dernier message: 07/06/2011, 17h34
  4. Réponses: 4
    Dernier message: 15/10/2008, 17h26
  5. Réponses: 2
    Dernier message: 15/08/2007, 16h27

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