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

IHM Discussion :

Ouvrir état à partir d'un sous formulaire [AC-2007]


Sujet :

IHM

  1. #1
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2014
    Messages : 49
    Points : 17
    Points
    17
    Par défaut Ouvrir état à partir d'un sous formulaire
    Bonjour à tous

    voilà le contexte.

    j ai un formulaire avec le nom des membres d'une association et le sous formulaire avec leur cotisations par année, donc j aurai plusieurs enregistrements dans ce sous formulaires. Très classique donc.

    j aimerai cliquer sur tel ou tel enregistrement du sous formulaire et ouvrir un état pour lui imprimer un reçu pour sa cotisation(que j ai déjà créé):

    exemple: Monsieur X a 2 années de cotisations. je veux ouvrir un état basé sur l"année 2 seulement mais pas l"année 1 car son reçu doit porter sur l année 2 et pas 1 donc je veux cliquer sur la ligne 2 du sous formulaire et ouvrir cet état.

    vous me suivez?

    si quelqu un a une idée.

    merci à tous

    stephi

  2. #2
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 772
    Points : 43 966
    Points
    43 966
    Par défaut
    Moi je fais ça en VBA, j'ouvre l'état/formulaire et je le filtre avec une requête SQL, que j'applique au recordset de l'état/formulaire.

    Tu dois aussi pouvoir le faire en appliquant un filtre sur l'état/formulaire.

    Pour ce genre de chose, je fais aussi des requêtes avec filtre via fonction retournant une variable stockant par exemple l'année N et N-1

  3. #3
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2014
    Messages : 49
    Points : 17
    Points
    17
    Par défaut
    salut et merci chrtophe

    pour ta première idée, oui mon état est bien sur basé sur un recordset mais comment distinguer 2 années?

    il a cotisé année N et N+1 et N+2, etc, ce que j aimerai c est en cliquant sur le troisiéme enregistrement par exemple (3ième ligne du sous formulaire), ouvrir l'état mais avec juste l état "reçu" concernant cet année.

    Tu vois?

    Merci si tu peux m aider.

    stephi

  4. #4
    Membre régulier
    Femme Profil pro
    emploi
    Inscrit en
    Mars 2014
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : emploi

    Informations forums :
    Inscription : Mars 2014
    Messages : 138
    Points : 99
    Points
    99
    Par défaut
    Bonsoir,


    Une piste que j'essaierais:

    - Mettre un évènement sur clic (par exemple) sur tes lignes de cotisations par année.
    - L'évènement ouvrirait un Etat avec donc l'id de ton membre et l'id de sa cotisation (et le reste des infos nécessaires)

    Sinon une autre solution un peu plus longue peut être à mettre en place serait un formulaire dédié à de la recherche sur les enregistrement; un lien que j'ai beaucoup apprécié:
    http://claudeleloup.developpez.com/t...-multicritere/
    Il existe d'autres tutos très bien fait que j'ai également eu l'occasion de mettre en œuvre dont certains basés principalement sur du VBA...


    Bonne continuation.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2014
    Messages : 49
    Points : 17
    Points
    17
    Par défaut
    Salut Defaultuser01

    Merci je regarde ça et ton tuto et je reviens vers toi.

    A plus

    Stephi

  6. #6
    Chroniqueur Actualités
    Avatar de Michael Guilloux
    Homme Profil pro
    Data Consultant
    Inscrit en
    Juillet 2013
    Messages
    2 939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Data Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 2 939
    Points : 88 209
    Points
    88 209
    Billets dans le blog
    2
    Par défaut
    Bonjour à tous,
    @ Stephi 222, je crois que ce que tu dois faire, c'est de modifier la source de ton état. Puisque ton état a la même source de données que ton sous-formulaire (enfin! je suppose), définis dans la source de ton état, dans le champ "Année" un critère d'égalité au champ "Année" du sous-formulaire. Utilises le QBE pour définir le critère, c'est plus facile. Ensuite, définis un évènement sur l'enregistrement sélectionné dans le sous-formulaire pour ouvrir l'état. Tu n'auras plus besoin de définir de critère dans ton évènement, puisque la source de l'état intègre déjà le critère.

  7. #7
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 846
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 846
    Points : 7 983
    Points
    7 983
    Par défaut
    Bonsoir,

    Ta solution passerait par un filtre des données de ton état de toutes les façons.
    1- Mais sans avoir ton modèle de données (le contenu de la source de ton état), il n'est pas évident de t'exposer concrètement la marche à suivre. Surtout si on ne sait pas ce que tu as comme clé primaire identifiant tes enregistrements dessus.
    2- Le principe utilisé passe par la création d'un module dans le formulaire qui est appelé à partir des évènements des différents contrôles du sous-formulaire.
    3- On utilise plutôt l'évènement double-clic des contrôles (et non le clic simple) pou ne pas avoir une ouverture intempestive de ton état sur une inattention de l'utilisateur.

    Je joins une base exemple avec les 2 modules différents selon que tu aies une clé primaire unique dans ta table ou non (la différence entre les 2 modules réside uniquement dans l'écriture du critère de filtre). Ma solution passe par un filtre des données de l'état à son ouverture avec la méthode Docmd.OpenForm.

    Bonne continuation

  8. #8
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2014
    Messages : 49
    Points : 17
    Points
    17
    Par défaut
    Merci à vous deux

    madefemere

    Ton exemple correspond à ce que je veux faire mais dans ton formulaire Liste de cotisation,j aimerai double cliquer sur la ligne qui m intéresse et ouvrir l' etat correspondant. là avec ton bouton,j ouvre toujours le même état.

    Tu vois ou c est moi qui l utilise mal?

    A te lire

    Stephi

  9. #9
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Ca fonctionne bien, en double cliquant sur le premier champ de la ligne

  10. #10
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2014
    Messages : 49
    Points : 17
    Points
    17
    Par défaut
    oui désolé effectivement j avais cliqué devant.

    Sinon l un d entre vous pourrait il me dire comment écrire la somme de la cotisation en lettre sur l'état.

    il a payé 50 euros soit cinquante euros.

    ce serait top.

    merci à vous
    Stephi

  11. #11
    Chroniqueur Actualités
    Avatar de Michael Guilloux
    Homme Profil pro
    Data Consultant
    Inscrit en
    Juillet 2013
    Messages
    2 939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Data Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 2 939
    Points : 88 209
    Points
    88 209
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par stephi222 Voir le message
    Sinon l un d entre vous pourrait il me dire comment écrire la somme de la cotisation en lettre sur l'état.
    il a payé 50 euros soit cinquante euros. ce serait top.
    Je crois pas que ça existe, mais si c'était le cas?? Ce serait trop top Je suis preneur.

  12. #12
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2014
    Messages : 49
    Points : 17
    Points
    17
    Par défaut
    si je crois que ça existe, j ai vu ça quelque part peut être pour un formulaire. j arrive pas à retrouver.

  13. #13
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 846
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 846
    Points : 7 983
    Points
    7 983
    Par défaut
    Bonjour,

    Tu as une fonction dans les sources d'Access ici.
    Et une discussion qui aborde la question ici.
    Je ne sais pas s'ils sont à jour pour les règles orthographiques, mais le principe n'a pas changé.

    Bonne continuation

  14. #14
    Chroniqueur Actualités
    Avatar de Michael Guilloux
    Homme Profil pro
    Data Consultant
    Inscrit en
    Juillet 2013
    Messages
    2 939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Data Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 2 939
    Points : 88 209
    Points
    88 209
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par stephi222 Voir le message
    si je crois que ça existe, j ai vu ça quelque part peut être pour un formulaire. j arrive pas à retrouver.
    Bien sûr, s'il s'agit d'une fonction personnelle avec un long code, oui .
    @Madefemere, c'est toujours utile de les avoir "Prêt à être utilisé" et de savoir que je ne vais pas réinventer la roue .

  15. #15
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2014
    Messages : 49
    Points : 17
    Points
    17
    Par défaut
    Bon j ai mis toute cette fonction dans un module

    je me suis mis surv l état ou je veux voir cette somme en lettre avec zone de texte contenant =Nb2Mot$(Cstr([Montant réglé])) et ça m envoie erreur de compilation

    Function Nb2Mot$(Valeur$)
    Dim a$
    '--- initialisation du tableau contenant les mots interprétés
    mot$(1) = "un" en jaune

    quelqu un a tresté cette fonction?

    stephi

  16. #16
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 846
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 846
    Points : 7 983
    Points
    7 983
    Par défaut
    Bonsoir,

    Oui, je viens de tester la fonction de la source Access et ça marche.
    Pourquoi, tu convertis ton argument en texte ?

    @+

  17. #17
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2014
    Messages : 49
    Points : 17
    Points
    17
    Par défaut
    salut madefere

    je ne veux rien convertir en texte. j ai copié la fonction simplement.

    j ai crée une zone de texte et écrit :

    Nb2Mot$(mon champ)

    pour convertir le chiffre de mon champ.

    est ce bon?

    Stephi

  18. #18
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 846
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 846
    Points : 7 983
    Points
    7 983
    Par défaut
    Bonjour,

    Tu fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Nb2Mot$(Cstr([Montant réglé]))
    Donc tu convertis d'abord ta valeur en texte avant de lui appliquer la fonction.

    Essayes directement
    =Nb2Mot$([Montant réglé])

    @+

  19. #19
    Membre à l'essai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2014
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2014
    Messages : 49
    Points : 17
    Points
    17
    Par défaut
    donc j ai mis

    =Nb2Mot$([Montant réglé]) en zone de texte

    et j a ça

    erreur de compilation..

    et


    Function Nb2Mot$(Valeur$)
    Dim a$
    '--- initialisation du tableau contenant les mots interprétés
    mot$(1) = "un"

    avec mot$'1) en jaune

    mystere

    stephi

  20. #20
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Pour vous aider, ci-joint un petit exemple qui répond au problème

    Bonne continuation
    Fichiers attachés Fichiers attachés

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [AC-2007] Ouvrir état à partir d'un formulaire
    Par pilou27 dans le forum IHM
    Réponses: 1
    Dernier message: 15/03/2012, 19h27
  2. [AC-2003] Requête de création d'un état à partir d'un sous formulaire
    Par manutazounet dans le forum IHM
    Réponses: 2
    Dernier message: 26/05/2010, 21h30
  3. [AC-2007] ouvrir formulaire à partir d'un sous formulaire
    Par xdoreau dans le forum IHM
    Réponses: 4
    Dernier message: 09/11/2009, 18h18
  4. Réponses: 2
    Dernier message: 10/07/2008, 16h49
  5. Mise à jour d'une table à partir d'un sous formulaire
    Par Daniel MOREAU dans le forum Access
    Réponses: 1
    Dernier message: 02/11/2005, 20h07

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