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

Macros Access Discussion :

Création d'une base : Pb de liste déroulante sur formulaire


Sujet :

Macros Access

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2020
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2020
    Messages : 16
    Points : 8
    Points
    8
    Par défaut Création d'une base : Pb de liste déroulante sur formulaire
    Bonjour à tous,

    J'ai créé une base de suivi avec différentes tables et formulaires, sur un l'un des formulaires, j'ai une liste déroulante qui me permet de faire défiler mes différents enregistrements (issus d'une table) et de les mettre à jour le cas échéant. Cette liste marchait parfaitement, jusqu'à ce qu'elle tombe "malade" (j'espère que ce n'est pas la covid19). Voici le message d'erreur de macro que la base m'affiche dès que je veux changer d'enregistrement et bien entendu les champs n'évoluent pas.

    Nom : erreur.jpg
Affichages : 251
Taille : 93,8 Ko

    Au niveau de la "macro incorporée" de ma liste, j'ai utilisé "RechercherEnregistrement" et dans "Condition Where" de la macro j'ai essayé les 2 bouts de code de l'image (dont l'un est en rouge). Et j'obtiens donc ce message d'erreur.

    Toujours au niveau de ma liste, j'ai laissé le champ "Source contrôle" vide et dans "contenu", j'ai mis 2 champs "IdA" et "N°enregistrement" de la table du formulaire.

    Je ne sais plus trop quoi faire, vous avez une idée d'où vient le problème ?

    Merci par avance pour votre aide.

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    11 986
    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 986
    Points : 24 531
    Points
    24 531
    Par défaut
    Bonjour,

    J'avoue ne pas comprendre la syntaxe (en rouge) que tu as utilisé.

    Si tu souhaites rajouter des séparateurs string dans ta syntaxe ( " ou ' ) tu peux écrire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ="[IdA]= """ & str(nz([screen]....)) & """"
    ou encore

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ="[IdA]= '" & str(nz([screen]....)) & "'"
    Ceci est une réponse purement syntaxique, au niveau fonctionnel, n'utilisant jamais de macro, je ne peux pas te garantir que ce que tu fais fonctionne.

    A noter qu'un Id c'est normalement toujours un numérique, donc les séparateurs ne doivent pas être utilisés.

    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

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2020
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2020
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Je te remercie pour ta réponse. J'ai essayé les 2 codes mais ça ne fonctionne pas malheureusement, les champs n'évoluent pas quand je change la valeur de ma liste. En gros, je voudrais savoir quoi mettre dans ma macro, je fais peut-être fausse route, n'étant pas un spécialiste.

    Nom : macro.jpg
Affichages : 197
Taille : 50,5 Ko

    Je voudrais juste que les champs de mon formulaire évoluent en fonction de la valeur de la liste. Sachant que les valeurs de la liste sont dans une colonne de ma table et que les valeurs des champs qui doivent évoluer en fonction de la liste sont dans la même table. C'est simple mais je dois me compliquer la vie pour rien, je comprends pas.

    Dans Propriété/Données/Contenu de ma liste, j'ai mis le champ "Id" ainsi que le champ nécessaire pour constituer ma liste de ma table.
    Et dans Propriété/Événement de ma liste, j'ai mis la macro incorporée dans "Après MAJ".

    Help me please.

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    11 986
    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 986
    Points : 24 531
    Points
    24 531
    Par défaut
    Bonjour,

    Je viens de faire un test, il n'y a rien à modifier dans ce que génère MS ACCESS.

    Nom : 2020-07-29_09h49_29.png
Affichages : 189
Taille : 7,7 Ko

    Vérifie que tu n'as rien de plus la zone "Condition Where" en cliquant sur la baguette magique à droite de la zone.

    Il t'ouvrira le générateur d'expression.

    Nom : 2020-07-29_09h56_03.png
Affichages : 185
Taille : 19,7 Ko

    Tu dois avoir 1 ligne et rien d'autre.

    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

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2020
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2020
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Merci pour la réponse.

    J'ai fait un test, j'ai donc recréé ma liste déroulante et là ça refonctionne correctement avec le code comme tu l'as noté dans la zone "Condition Where", c'est même automatique.

    J'ai testé le fonctionnement, ça marche nickel. Je sauvegarde, je ferme ma base.

    Je ré-ouvre ma base, je clique sur mon bouton d'accès à mon formulaire et là 1er message d'erreur:
    "Le paramètre de la propriété ChampPères est à l'origine de l'erreur suivante : "l'objet ou la classe ne gère pas le jeu d'évènements".

    Je clique sur "OK" et j'arrive sur mon formulaire. Je choisis une valeur au hasard dans ma liste et la 2ème message d'erreur : "l'objet ou la classe ne gère pas le jeu d'évènement"

    Je clique à nouveau sur "OK" et ça m'ouvre la fenêtre "Pas à Pas" que j'avais posté un peu plus haut.

    Je ne comprends pas pourquoi ça fonctionne et quand je quitte et que je relance ça ne marche plus. C'est à devenir fou.

    Est-ce que c'est pas un problème de relation(s) ?

  6. #6
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    11 986
    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 986
    Points : 24 531
    Points
    24 531
    Par défaut
    Bonjour,

    ""Le paramètre de la propriété ChampPères est à l'origine de l'erreur suivante : "l'objet ou la classe ne gère pas le jeu d'évènements"."

    Ce message est la cause du problème de la macro.
    Tant que ce problème n'est pas réglé le reste ne fonctionnera pas.

    Supprime le contenu de la propriété ChampsPère et ChampsFils du container de ton sous-formulaire.

    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

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2020
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2020
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    J'ai supprimé le contenu de la propriété ChampsPère et ChampsFils du container de ton sous-formulaire. Et donc je n'ai plus le message, à l'ouverture du formulaire :
    "Le paramètre de la propriété ChampPères est à l'origine de l'erreur suivante : "l'objet ou la classe ne gère pas le jeu d'évènements".

    Mais j'ai toujours mon soucis de liste déroulante : "l'objet ou la classe ne gère pas le jeu d'évènement"

  8. #8
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    11 986
    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 986
    Points : 24 531
    Points
    24 531
    Par défaut
    peux-tu poster le fichier ?
    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

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2020
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2020
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Un grand merci pour ton aide mais pour l'instant, ça ne sera pas nécessaire, j'ai réussi à refaire fonctionner mon formulaire avec la liste. A priori, le soucis venait de la "source" de mon formulaire. Bizarrement, j'avais dû créer une requête depuis la source du formulaire et dans la propriété "source" du formulaire, ça affichait : "SELECT T_100.* FROM T_100;"

    Dans "source", j'ai juste re-sélectionné ma table pour n'avoir que "T_100" et j'ai recréé ma liste. Et miracle ça fonctionne. J'ai pas tout compris.


    Par contre, il va falloir que je regarde mais depuis ce formulaire "A" j'appelle un autre formulaire "B". Le formulaire "B" est associé à une autre table "T_200" et me permet de sélectionner des personnes à lier au formulaire "A". Le formulaire "A" dispose d'un numéro d'enregistrement spécifique, qui se reporte sur le formulaire "B" et qui me permet de lier les personnes au n° d'enregistrement.

    Le n° d'enregistrement du formulaire "A" est unique (clé primaire) et le formulaire "B" me permet de créer plusieurs lignes dans la table "T_200". Ensuite, je fais la relation entre mes 2 tables via le n° d'enregistrement.

    J'ai 2 fois cette combinaison (formulaires+tables) pour traiter des données différentes et indépendantes. Pour l'une des combinaisons, ça fonctionne très bien et pour l'autre, le formulaire "B" n'arrive pas à rapatrier correctement le n° d'enregistrement du formulaire "A". Là aussi je dois passer à côté de quelque chose. Pour l'instant en comparant les 2 combinaisons, j'ai pas trouvé l'erreur.

  10. #10
    Futur Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2020
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2020
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Juste pour compléter mon post précédent, j'ai réglé le 2ème soucis, qui provenait de la "source de contrôle" d'une "zone de texte". Tout est revenu à la normal.

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2020
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2020
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    J'ai un formulaire avec lequel j'exécute une requête en fonction d'un intervalle de dates définies. J'ai crée une liste A avec 3 critères de choix pour filtrer le résultat de ma requête.
    Dans ma requête, j'ai mis la liste A de mon formulaire dans la case "critère" du champ à filtrer. Ça fonctionne très bien.

    Par contre, quand je ne sélectionne pas un de ces 3 critères avec la liste A, je voudrais que la requête m'affiche toutes les données. Comment je peux faire ça ?

  12. #12
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    11 986
    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 986
    Points : 24 531
    Points
    24 531
    Par défaut
    Si c'est un problème différent tu dois mettre celui-ci en résolu et ouvrir une autre discussion. Merci
    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

  13. #13
    Futur Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2020
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2020
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Ok, j'hésitais à en créer un nouveau, je voulais pas polluer le forum avec de multiples sujets.

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 05/12/2015, 18h57
  2. Liste déroulante sur formulaire continu
    Par Lilou51 dans le forum VBA Access
    Réponses: 6
    Dernier message: 18/06/2014, 14h57
  3. [AC-2007] Modification de valeur d'une liste déroulante sur formulaire
    Par cocoda dans le forum IHM
    Réponses: 4
    Dernier message: 11/10/2012, 18h16
  4. [AC-2003] Contenu zone de liste déroulante sur formulaire continu
    Par willytito dans le forum VBA Access
    Réponses: 3
    Dernier message: 28/12/2011, 18h11
  5. contrôle liste déroulante sur formulaire
    Par papagei2 dans le forum IHM
    Réponses: 4
    Dernier message: 11/11/2008, 13h13

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