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 :

Récupération de la somme d'un sous-formulaire


Sujet :

IHM

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut Récupération de la somme d'un sous-formulaire
    Bonjour

    Je travaille avec un sous formulaire et je fais le total des lignes dans le pied de ce sous-formulaire et ça marche !
    Ensuite je récupère la valeur de ce champ dans le formulaire et ça marche aussi !

    Sauf lorsque mon sous-formulaire à plus de ligne que l'affichage ne le permet... Je m'explique:

    Mon sous-formulaire peut afficher 10 lignes, si je j'ai moins de 10 lignes, pas de problème, mon code vba qui récupère total qui est en pied de page du sous formulaire fonctionne. Mais si j'ai plus de 10 lignes, donc si je ne vois pas mes dernières lignes, mon code vba ne récupère pas le total ! Et pourtant je vois mon pied de page avec le total mais dans le formulaire il indique la valeur "0"

    Merci de votre aide

    Paselo

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    bonjour,
    C'est important de donner des explications, certes, mais une impression d'écran et le code que tu utilises serait plus efficace ...
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut
    Voici mon code sur "clic" d'un bouton du formulaire... et ça fonctionne sauf quand il y trop de lignes...

    Me![Total HT] = [F_Contrats sous-formulaire].Form![Total_détail]Dans 1.png, on voit un total en gris clair de 224.00 en pied de page et un total de 0.00 juste en dessous du bouton calculer
    Dans 2.png, j'ai juste supprimer une ligne, et le total en gris clair de 216.00 se reporte bien dans le champ total sous le bouton !

    Merci
    Images attachées Images attachées   

  4. #4
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Dans png2 vous avez tout en bas une ligne juste après 8-8-0.25-39-31-04.05.2019 entre chien et loup et pourtant votre -216.00 est calculé.
    Ce serait une première parce que des lignes dans un sform ne seraient pas visible, sauf proc vba particulière, que des champs calculés en seraient altérés.
    Quelle formule dans votre textbox Me![TOTAL HT] ?
    Quelle action précède l'action sur click() ?
    Vous confirmez que votre tableau en mode colonne est bien un sform en mode affichage feuille de données et que le report des totaux est soit dans la zone détail ou le pied de form de votre form.
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut
    après avoir fait pleins de tests, il s'agit d'une erreur de ma part..., j'avais un autre code qui me générait un résultat "0" .. Et apparemment, après avoir déplacé ce code, ça fonctionne...

    Je vais faire des tests

    désolé pour le dérangement et merci

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut
    Après plus de tests, le résultat est aléatoire... lorsque je clic sur le bouton, de temps en temps, ça marche et de temps en temps, ça ne marche pas... Genre sur 5 clic, 3 fois ça va fonctionner et 2 fois, ça ne fonctionne pas...

    Merci

  7. #7
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Pourriez-vous copier l'intégralité de votre code ?
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut
    OK apparemment si j'attends quelques secondes entre 2 clics, je n'ai pas de problème, par contre si je clic plus rapidement, la valeur ne se copie pas...

    JE regarde pour remettre le code

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me![Total HT] = [F_Contrats sous-formulaire].Form![Total_détail]
    Voilà avec ce simple code, en laissant du temps, ça marche et si je laisse moins d'une seconde, la valeur est à "0" et ce uniquement si j'ai plus de ligne que l'affichage du formulaire. Mais si je place le curseur sur ma dernière ligne de formulaire, pas de soucis. On dirait que lorsque certaines lignes sont cachées, il ne faut pas demander de calcul trop rapidement ;-)

    Merci

  10. #10
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    A tester,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.[Total HT].Value = [Forms]![nomFormPrincipal]!F_Contrats sous-formulaire].Form![Total_détail]
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut
    En fait j'ai 3 niveaux de formulaire ... je vais faire des tests

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut
    Voici mes 3 formulaires dans l'ordre :

    F_Contrats_clients
    F_Contrats
    F_Contrats sous-formulaire

    Comment dois-je écrire le code ? avec des "." des "!" des "form" ?

    Merci

    Paselo

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut
    J'ai essayé plusieurs solutions mais toujours pas la bonne...
    Pfff je sèche... je ne comprend pas ce qu'il se passe !

    Vraiment besoin d'aide... , merci

  14. #14
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    3 niveaux ?
    Une capture d'écran en mode création de votre form svp
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  15. #15
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut
    Nom : Capture.PNG
Affichages : 316
Taille : 120,2 Ko

  16. #16
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    ok sur l'évènement click() de votre btn calculer, enfin si c'est un btn
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.[Total HT].Value = Me![F_Contrats sous-formulaire].Form![Total_détail]
    Mais je ne comprends pas pourquoi vous passez par vba pour calculer dans votre exp. 216,00, il suffirait normalement d'écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =[F_Contrats sous-formulaire].[Formulaire]![Total_détail]
    dans la textbox Total.
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  17. #17
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut
    Merci
    Effectivement, ça marche très bien dans la textbox...
    Mais ensuite dans le formulaire, j'ai un total qui est un calcul du [Total HT] moins différent rabais ! Ce calcul était fait dans une requête mais je remarque que je peux très bien aussi le faire dans le formulaire... apparement plus simple !

    MAIS... c'est différent résultat son ensuite utilisé ailleurs... donc lorsque mes calculs était fait dans ma requête, c'était facile pour moi des les récupérer dans une autre requête pour ensuite pouvoir les utiliser dans des états ou autre avec des filtres...

    Mais comme maintenant la valeur est dans le formulaire, comment dois-je faire pour la récupérer dans une requête ?

    Merci

  18. #18
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Si vos form ont pour source de contrôle une req rien ne vous empêche de faire les calculs via ces mêmes req et de les utiliser pour vos états.
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  19. #19
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut
    Oui mais pour faire ces calculs, j'ai besoin de la valeur "Total HT"

    Je suis perdu...

    Dans mon formulaire, j'ai utilisé ça: ¨

    =[F_Contrats sous-formulaire].[Formulaire]![Total_détail] et le nom de cette textbox est "Total HT".
    Dans une requête, j'ai besoin de la valeur "Total HT" car je l'utilise dans un calcul ! Mais comment faire parvenir cette valeur dans la requête?

    Merci

  20. #20
    Membre régulier
    Profil pro
    Inscrit en
    Août 2010
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2010
    Messages : 313
    Points : 73
    Points
    73
    Par défaut
    Pfff je crois avoir résolu mes problèmes... je teste demain à tête reposée

    Merci

Discussions similaires

  1. [formulaire] Somme dans un sous formulaire
    Par Ancy91 dans le forum IHM
    Réponses: 3
    Dernier message: 18/09/2007, 17h31
  2. Réponses: 2
    Dernier message: 19/06/2007, 08h44
  3. cacul d'une somme dans un sous formulaire
    Par T'chab dans le forum IHM
    Réponses: 5
    Dernier message: 22/01/2007, 14h17
  4. somme et cumuls sous-formulaire
    Par Pigwi dans le forum Access
    Réponses: 2
    Dernier message: 18/09/2006, 17h35
  5. Somme d'un sous formulaire avec une table comme source
    Par yoyosoleil dans le forum Access
    Réponses: 4
    Dernier message: 22/06/2006, 11h00

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