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 :

Afficher résultat de différents calculs dans le pied de page


Sujet :

IHM

  1. #1
    Candidat au Club
    Inscrit en
    Novembre 2006
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Afficher résultat de différents calculs dans le pied de page
    Bonjour,

    J'ai un état ou j'ai une zone de détail puis des calculs dans les pieds de groupes et enfin j'aimerais bien afficher les résultats de ces groupes dans un petit tableau en pied de page. Si quelqu'un à une solutions se serait top

  2. #2
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Le pb n'est pas si simple car Access ne permet pas de faire des sum ou count... dans le pied de page, cette zone n'étant pas représentative d'un groupe de données.

    Ton seul recours il me semble, si tu veux faire une somme par exemple, est de coder cette somme en VBA.
    Tu déclares une variable de niveau module et tu lui additionne le montant à chaque Print de la ligne détail (attention au FormatCount)
    et quand tu arrives au pied ... tu affiches le résultat et tu remets ta variable à 0.

  3. #3
    Candidat au Club
    Inscrit en
    Novembre 2006
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    Tout d'abord merci de ta réponse.
    Le problème est que malgré tes explications je ne vois pas trop comment faire. (le code n'est pas spécialement ma tasse de thé). N'existe t'il pas un moyen dans access pour définir une zone en tant que pied de page (une zone calculé en pied de groupe par exemple) ou tout autre méthode ?

  4. #4
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Je crains que la réponse cela soit VBA ou rien!

  5. #5
    Candidat au Club
    Inscrit en
    Novembre 2006
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    En fait mon but n'est pas forcement que le calcul se trouve dans la zone du pied de page mais toujours au meme endroit sur toutes les pages ou le calcul apparrait. J'ai essayer aussi de faire les calculs a un autre emplacement et ensuite d'afficher simplement le resultat de ces calculs dans la zone du pied de page, mais le résultat afficher n'est pas toujours bon (dépendant du nombre de sous totaux). Ai je oublié quelque chose ? Si, il n'y a pas d'astuce autre que le vba, quelqu'un pourrait me donner un petit exemple ou m'aider ?

  6. #6
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 778
    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 778
    Points : 14 828
    Points
    14 828
    Par défaut
    Bonsoir,
    Si je ne me trompe pas tu veux faire un récapitulatif en pied de page de tes cumuls par groupe :
    Citation Envoyé par yoda25
    J'ai un état ou j'ai une zone de détail puis des calculs dans les pieds de groupes et enfin j'aimerais bien afficher les résultats de ces groupes dans un petit tableau en pied de page
    Par contre ici ce n'est plus le cas :
    Citation Envoyé par yoda25
    En fait mon but n'est pas forcement que le calcul se trouve dans la zone du pied de page mais toujours au meme endroit sur toutes les pages ou le calcul apparrait.
    Citation Envoyé par yoda25
    Ai je oublié quelque chose ? Si, il n'y a pas d'astuce autre que le vba, quelqu'un pourrait me donner un petit exemple ou m'aider ?
    Je pense que se serait plutôt à toi de nous donner un exemple de ce que tu souhaites.

    Ceci dit je peux te proposer un code VBA assez simple à mettre en oeuvre.
    Je te propose comme exemple une édition de factures fournisseurs avec un cumul par fournisseur des acomptes versés ainsi qu'un cumul du hors taxe.
    Je souhaite faire un récapitulatif à chaque page des cumuls payés aux fournisseurs. Comme je suis limité par la place (un pied de page n'est pas extensible), j'imprime les 5 premiers fournisseurs avec leurs noms, sur le 6ème je cumule tous les autres.
    Dans le pied de page j'ai 18 controles indépendants qui représentent mon 'Tableau' :
    Nom du fournisseur : Fourniss1 à Fourniss6
    Acomptes : CumAcompte1 à CumAcompte6
    Total HT : CumTotal1 à CumTotal6

    Déclaration au niveau de l'état d'un compteur pied de groupe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Option Compare Database
    Option Explicit
    ' Compteur pied de groupe
    Dim intGroup As Integer
    Initialisation du 'tableau' à chaque nouvelle page
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Private Sub ZoneEntêtePage_Format(Cancel As Integer, FormatCount As Integer)
    Dim I As Integer
    ' Initialisation des cumuls du pied de page et compteur de groupe à chaque nouvelle page
    intGroup = 0
     
    ' Mise à jour des champs du tableau récapitulatif
    For I = 1 To 6
        Me.Controls.Item("Fourniss" & I) = 0        ' Nom Fournisseur
        Me.Controls.Item("CumAcompte" & I) = 0      ' Acomptes versés
        Me.Controls.Item("CumTotal" & I) = 0        ' Total hors taxe
    Next I
     
    End Sub
    Alimentation des postes du 'tableau'
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    Private Sub PiedGroupe1_Format(Cancel As Integer, FormatCount As Integer)
     
    ' Une section pied de page n'étant pas extensible, on devra définir une
    ' taille maximale au tableau récapitulatif.
    ' Les nom des champs du tableau du pied de page devront se terminer
    ' par un chiffre de 1 à n (dans cet exemple n vaut 6)
     
    ' Incrémentation compteur de groupe à chaque édition d'un groupe
    intGroup = intGroup + 1
     
    If intGroup < 6 Then
    ' On remplit le tableau avec les champs cumul du pied de groupe.
    ' le champ [FournAcompteHt] est le cumul du champ détail [AcompteHt]
    ' le champ [FournTotalHt] est le cumul du champ détail [TotalHt]
     
        Me.Controls.Item("CumAcompte" & intGroup).Value = Me.[FournAcompteHt]
        Me.Controls.Item("CumTotal" & intGroup).Value = Me.[FournTotalHt]
    ' On récupère le nom du fournisseur
        Me.Controls.Item("Fourniss" & intGroup).Value = Me.[Fournisseur]
    Else
    ' Le récapitulatif étant limité à 6 on cumule donc tous ceux
    ' dépassant 5 sur le 6ème et dernier poste
        Me.Fourniss6 = "Autres ..."
        Me.CumAcompte6 = Me.CumAcompte6 + Me.FournAcompteHt
        Me.CumTotal6 = Me.CumTotal6 + Me.FournTotalHt
    End If
     
    End Sub

  7. #7
    Candidat au Club
    Inscrit en
    Novembre 2006
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    Merci pour vos réponse, je vais regarder d'avantage le code que tu m'a mis en exemple. C'est vrai que je n'ai peu etre pas été tres clair, ce donc j'ai besoin c'est d'afficher des calculs que j'ai effectué a divers emplacement dans l'état.

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

Discussions similaires

  1. [AC-2010] Afficher zéro en l'absence de résultat d'un calcul dans une requête
    Par ToFind dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 14/12/2012, 02h58
  2. [AC-2010] Calcul dans le pied-de-page d'un formulaire
    Par Harry Covair dans le forum IHM
    Réponses: 1
    Dernier message: 14/11/2011, 11h02
  3. Résultat calculé dans un pied de page DataReport
    Par jimmy-sept dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 26/04/2007, 17h12
  4. trier sur le résultat d'un calcul dans l'état
    Par crissud dans le forum IHM
    Réponses: 21
    Dernier message: 16/03/2007, 07h04
  5. Réponses: 1
    Dernier message: 05/03/2007, 13h33

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