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 :

Mettre une condition avec OpenRecordset [AC-2010]


Sujet :

Access

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 80
    Points : 63
    Points
    63
    Par défaut Mettre une condition avec OpenRecordset
    Bonjour,

    Voici un petit problème auquel je ne lui trouve pas de solution :

    En effet, j'ai créé un formulaire pour remplir une table (table 2) manuellement. J'ai défini une liste déroulante pour la clé primaire que je vais appeler ID. Cette clé primaire a certaines valeurs d'une autre table (table 1).
    Quand je choisie une valeur de l'ID, il y a un champ qui se remplit automatiquement via un code vba sur la liste déroulante de la clé primaire. Si la valeur de cette clé existe dans la table 2, le champs se remplit, sinon j'ai un message d'erreur : "Erreur d'exécution '3021' : Aucun enregistrement en cours".

    Le code que j'ai utilisé est : Txt = CurrentDb.OpenRecordset("SELECT Ent.Dern_ent FROM Ent WHERE Ent.S = " & ID).Fields(0).Value

    J'aimerai que, quand il n'y a pas de correspondance des ID dans les tables 1 et 2, Txt soit vide.

    J'espère que j'ai expliqué comme il faut sinon demandez moi.

    Merci d'avance les amis :-)

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    Si tu remplaces ton recordset par un DFirst() il va faire cela automatiquement.

    Si j'ai bien compris, cela devrait être :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Txt="" & DFirst("Dern_ent", "Ent", "Ent.S = " & ID)
    Le "" & est un astuce pour récupéré un chaîne vide si le résultat de la recherche est Null c-à-d qu'il n'y a pas de données correspondantes.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 80
    Points : 63
    Points
    63
    Par défaut
    Yes, ça marche.

    Merci beaucoup marot_r

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/09/2006, 10h31
  2. mettre une condition dans l'ajout de données
    Par ash_rmy dans le forum Access
    Réponses: 2
    Dernier message: 27/07/2006, 13h29
  3. Réponses: 5
    Dernier message: 04/07/2006, 10h55
  4. Mettre une condition if dans une requete sql
    Par Sardonnen dans le forum Oracle
    Réponses: 4
    Dernier message: 24/03/2006, 11h25
  5. mettre une condition au sein d'un echo
    Par mussara dans le forum Langage
    Réponses: 8
    Dernier message: 09/02/2006, 14h12

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