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 :

total dans chaque page d'un état access


Sujet :

IHM

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 42
    Points : 20
    Points
    20
    Par défaut total dans chaque page d'un état access
    Bonjour à toutes et à tous,

    Comme le suppose le nom de mon post j'ai un état, basé sur une requête d'analyse croisée, qui sort sur 4 pages

    Placer un contrôle dans le pied d'état afin d'avoir par colonne le total général, OK je peux faire

    Mais est-il possible de créer une zone de texte dans le pied de page me donnant un sous-total totalisant (bien évidemment que peut faire un sous-total à part sous-totaliser ) les données numériques par page ?

    Merci à tous

  2. #2
    Membre habitué

    Inscrit en
    Mars 2004
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 92
    Points : 127
    Points
    127
    Par défaut
    bonsoir,
    Voici ce que j'ai trouvé:
    Totaliser par page dans le pied de page

    Le problème rencontré par de nombreux développeurs est que le pied de page est la seule section d'un état dans laquelle la fonction Somme ne fonctionne pas. Il s'agit d'un bug récurent d'Access qu'il s'agit de contourner. Plusieurs solutions sont possibles, avec ou sans code VBA. La solution présentée ici demande que vous insériez un contrôle indépendant dénommé txtTotPage dans la section Pied de page et que vous ajoutiez le code intégré suivant dans votre état.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    ' Variable de module permettant de cumuler le total de chaque enregistrement
    Private TotalPage As Currency
     
    Private Sub Détail1_Print(Cancel As Integer, PrintCount As Integer)
     
    TotalPage = TotalPage + [TotalFact]
    End Sub
     
    Private Sub PiedPage_Print(Cancel As Integer, PrintCount As Integer)
     
    [txtTotPage].Value = TotalPage
    'Initialisation de la variable pour la page suivante
    TotalPage = 0
    End Sub
    Remarque:
    On pourrait aussi mettre le cumul dans le pied de page lors de l'événement Au Formatage au lieu de l'événement Sur Impression.. Pour adapter cet exemple à vos besoins, il suffit de remplacer TotalFact par le nom approprié de votre zone de texte dépendante, tel que TotalCommande, TotalVente, etc.


    En espérant que cela va t'aider, je ne l'ai pas testé

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 42
    Points : 20
    Points
    20
    Par défaut
    Bonjour sasmira_,

    Sur tes conseils j'ai créé une zone de texte dans le pied de page de mon état et rentré le code suivant dans l'état :

    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
    ' Variable de module permettant de cumuler le total de chaque enregistrement
    Private TotalPage As Currency
     
    Private Sub Détail_Print(Cancel As Integer, PrintCount As Integer)
     
    TotalPage = TotalPage + [TotalFact]
     
    End Sub
     
    Private Sub ZonePiedPage_Format(Cancel As Integer, FormatCount As Integer)
     
    [totpage].Value = TotalPage
    'Initialisation de la variable pour la page suivante
    TotalPage = 0
     
    End Sub
    Je ne suis pas expert en VBA, mais je comprend ce que le code est censé faire. Ce qui me gène c'est que la zone de texte du pied de page a le controlsource vide.

    J'ai quand même ouvert mon état (en apperçu avant impression).
    Malheureusement le message d'erreur suivant apparaît :

    Erreur d'exécution '94' :

    Utilisation incorrecte de Null


    J'ai pensé que le problème pouvait venir du fait que pour certaines lignes de mon état, la zone [TotalFact] n'a pas de valeur. J'ai donc forcé l'affichage d'une valeur en mettant dans la source du contrôle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =VraiFaux([Adjoint CLIN]>0;[Adjoint CLIN];0)
    Le message d'erreur a changé

    [color=darkred]Erreur d'exécution '13' :

    Incompatibilité de type

    Merci pour ton aide

  4. #4
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Salut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private TotalPage As Currency
    Ici le total se fait sur un format monétaire...
    A adapter en fonction de ce que tu souhaites totaliser..

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 42
    Points : 20
    Points
    20
    Par défaut
    Bonjour kikof,

    Les données à totaliser sont au format fixe à 2 décimales, comme je l'ai dit je ne suis pas expert en vba. Peux-tu me donner la marche à suivre ?

    d'avance merci.

  6. #6
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Regarde l'aide sur les types de données.
    tu y trouveras tous les types Integer, Long, Double, Currency, Variant...
    Il y a aussi Decimal si je ne m'abuse...

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 42
    Points : 20
    Points
    20
    Par défaut
    Slt,

    Parfait, ça marche !!!

    Mes Données sont plus précisément en réel double dans ma table, donc j'ai rentré le code suivant :


    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
    ' Variable de module permettant de cumuler le total de chaque enregistrement
    Private TotalPage As Double
     
     
    Private Sub Détail_Print(Cancel As Integer, PrintCount As Integer)
     
    TotalPage = TotalPage + [MonChampsàtotaliser]
     
    End Sub
     
    Private Sub ZonePiedPage_Print(Cancel As Integer, PrintCount As Integer)
     
    [MaZoneTexteDansPiedDePage].Value = TotalPage
    'Initialisation de la variable pour la page suivante
    TotalPage = 0
     
    End Sub
    Merci encore.

  8. #8
    Futur Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 5
    Points : 5
    Points
    5
    Par défaut total pied de page
    Bonjour tous le monde merci beaucoup j’ai résolus mon problème avec ce code VBA mais j’ai encor un petit souci avec un état qui contiens quatre colonne a totalisé comment je peux pour ajouté les autre colonne a totalisés dans ce code VBA

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

Discussions similaires

  1. Différent titre dans chaque page ?
    Par {F-I} dans le forum Référencement
    Réponses: 13
    Dernier message: 03/02/2008, 17h14
  2. Réponses: 13
    Dernier message: 28/09/2007, 11h55
  3. Réponses: 2
    Dernier message: 18/07/2007, 17h19
  4. mysql_close dans chaque page ?
    Par Greggggggg dans le forum Requêtes
    Réponses: 8
    Dernier message: 30/08/2006, 15h20
  5. [débutant] Même partie de page dans chaque page
    Par ShinJava dans le forum Servlets/JSP
    Réponses: 9
    Dernier message: 10/12/2004, 15h02

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