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 :

[ACCESS] Etats graphiques dynamiques


Sujet :

IHM

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

    Informations forums :
    Inscription : Juin 2006
    Messages : 33
    Points : 13
    Points
    13
    Par défaut [ACCESS] Etats graphiques dynamiques
    Bonjour a toute la communauté,
    Voila je dois réaliser des etats graphiques permettant de suivre l'evolution d'une variable (nombre d'heures de metrologie) sur une periode donnée.
    L'etat doit etre dynamique dans la mesure ou l'utilisateur peut choisir un atelier précis.
    Je m'explique,
    Voici comment se presente la table:



    L'utilisateur doit donc choisir un nom d'atelier comme le montre la capture suivante:



    Si il choisit "API" (qui est le nom de l'entreprise), alors l'etat doit contenir l'evolution mensuelle des heures de metrologie pour chacun des ateliers pour la periode donnée.. Il y aura donc autant de graphiques que d'ateliers.

    Si il choisit un atelier (ATM1,ATM2....), alors l'etat doit contenir l'evolution mensuelle des heures de metrologie UNIQUEMENT pour l'atelier concerné..

    Jusqu'a la je n'ai pas eu de mal a synthetiser çà a l'aide d'une requete:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    ' texte de la requete
    req = "SELECT * FROM _AQ WHERE DateAQ Between #" & madatedebut & "# And #" & madatefin & "#"
     
    ' si on selectionne API
    If Forms!TB_AQ!Nom_atelierAQ = "API" Then
        req = req & ";"
    Else
    ' si on selectionne un atelier, on rajoute la restriction sur le nom de l'atelier
        req = req & "and [_AQ].[Nom_atelierAQ] = '" & Forms!TB_AQ!Nom_atelierAQ & "';"
    End If
    J'ai donc bien une requete qui marche parfaitement et qui me fait bien la restriction demandée.

    Mon probleme c'est que je n'arrive pas a faire un etat qui represente l'evolution du nombre d'heures de metrologie pour chaque atelier..

    Quelqu'un connnaitrai t-il la demarche pour representer le contenu de ma requete, ç'est a dire l'evolution du nombre d'heures mensuelle pour la periode donnée pour un atelier (ou l'ensemble des ateliers = API) ??

    J'ai essayé de créer un état mais le probleme c'est qu'il me créé autant de graphiques qu'il y a d'enregistrement..
    j'ai recontré aussi le probleme de "la somme" obligatoire si on a en abssice une date

    Voila je suis en stage... j'ai deja eu ma note mais je ne voulais pas partir et rendre qqchose qui ne marche pas
    je dois rendre l'application lundi 31...
    je vous laisse mon email si qqun a un peu de temps a me consacrer (freddrider@hotmail.com) .

    Frédéric.

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 33
    Points : 13
    Points
    13
    Par défaut
    l'appli est ici :
    http://membres.lycos.fr/fdescoux/API...ndicateurs.zip

    je peux egalement l'envoyer par mail

    merci d'avance!

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

    Informations forums :
    Inscription : Juin 2006
    Messages : 33
    Points : 13
    Points
    13
    Par défaut
    Pour résumer...

    comment a partir de la requete sur la table suivante, tracer l'evolution mensuelle du nombre d'heures de metrologie par atelier.
    Il y aura autant de graphiques que d'atelier.


  4. #4
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour,
    Je travaille toujours dessus, mais pour l'instant pas trop d'idée.......

    En fait, quand tu mets ton graphique directement en en-tête (pas dans la zone Détail), tu n'a plus la multiplication de graph.

    Cette solution fonctionne correctement lorsque tu ne veux afficher que les résultats d'un seul atelier........par contre lorsque tu choisi API (pour l'ensemble des ateliers), ici ça ne fonctionne pas car tu n'a plus qu'un seul graphique à la place des X graphiques qui devraient apparaitre.

    Donc à suivre .....
    FreeAccess
    "Petit à petit l'araignée tisse sa toile"

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

    Informations forums :
    Inscription : Juin 2006
    Messages : 33
    Points : 13
    Points
    13
    Par défaut
    merci beaucoup chef!
    voila en fait j'ai cliqué sur le graphique ... propriété > contenu..

    et j'ai çà :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    TRANSFORM Sum([Nb_heures_metro]) AS [SommeDeNb_heures_metro] SELECT (Format([DateAQ],"MMM 'YY")) FROM [requeteAQ] GROUP BY (Year([DateAQ])*12 + Month([DateAQ])-1),(Format([DateAQ],"MMM 'YY")) PIVOT [Nom_atelierAQ];


    et j'ai çà en cliquant sur les "..." :




    j'avou ne pas y comprendre grand chose mais je suis pas sur que ce soit bon si ?

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 33
    Points : 13
    Points
    13
    Par défaut
    si on le met en entete on a autant de graphiques en entete qu'il y a d'enregistrements..

  7. #7
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    si on le met en entete on a autant de graphiques en entete qu'il y a d'enregistrements..
    Ici je parlais de l'en-tête de l'état
    Sur l'état TB_AQ2, si tu déplace ton contrôle graphique de la Zone Détail vers la Zone En-tête de groupe, tu obtiens bien un seul graphique par type d'atelier...........il faut également que tu mettes le contrôle Texte43 dans cette même zone.

    Donc après test:
    -pour n'importe quel atelier on a bien un seul graphique

    -si le choix est API (ensemble des ateliers) on obtiens également un seul graphique pour la première page .........mais si on essaie d'accéder à la deuxième page il il y message d'erreur
    Pour l'instant c'est un début........à suivre
    FreeAccess
    "Petit à petit l'araignée tisse sa toile"

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 33
    Points : 13
    Points
    13
    Par défaut
    Bon çà avance... çà avance
    çà marche parfaitement pour un seul atelier
    maitenant il ne reste plus qu'a automatiser çà pour API

    Voila le code de mon apres midi:

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    Private Sub Visualiser_Click()
     
    Dim req As String
    Dim req1 As String
     
     
    Dim stDocName As String
    'texte de la requete req
    req = "SELECT (Format([DateAQ],""mmm"""""
    req = req & " '"
    req = req & """"
    req = req & """"
    req = req & "yy"
    req = req & """"
    req = req & "))"
    req = req & "AS Expr1, Sum([_AQ].Nb_heures_metro) AS SommeDeNb_heures_metro FROM _AQ "
     
    'texte de la requete req1
    req1 = "SELECT DISTINCT [_AQ].[Nom_atelierAQ] FROM _AQ"
     
     
    'Si on selectionne l'ensemble des ateliers
    If Forms!TB_AQ!Nom_atelierAQ = "API" Then
     
    req = req & "where year(DateAQ) = '" & [Forms]![TB_AQ]![annee] & "'"
    req = req & " GROUP BY (Format([DateAQ],""mmm"""""
    req = req & " '"
    req = req & """"
    req = req & """"
    req = req & "yy"
    req = req & """"
    req = req & "))"
    req = req & ", (Year([DateAQ])*12+Month([DateAQ])-1);"
     
    '-----------------'
    req1 = req1 & ";"
    '-----------------'
     
     
    'si on selectionne un seul atelier = restriction sur un atelier
     
    Else
     
    req = req & "where year(DateAQ) = '" & [Forms]![TB_AQ]![annee] & "'"
     
    'plus la restriction sur l'atelier
    req = req & "and [_AQ].[Nom_atelierAQ] = '" & Forms!TB_AQ!Nom_atelierAQ & "'"
     
     
    req = req & "GROUP BY (Format([DateAQ],""mmm"""""
    req = req & " '"
    req = req & """"
    req = req & """"
    req = req & "yy"
    req = req & """"
    req = req & "))"
    req = req & ", (Year([DateAQ])*12+Month([DateAQ])-1);"
     
    '-----------------'
    req1 = req1 & " WHERE [_AQ].[Nom_atelierAQ] = '" & Forms!TB_AQ!Nom_atelierAQ & "'" & ";"
    '-----------------'
     
    End If
     
    MsgBox req
    MsgBox req1
     
    'création de la requete req
    CurrentDb.CreateQueryDef "requeteAQ", req
     
    'creation de la requete req1
    CurrentDb.CreateQueryDef "requeteAQSource", req1
     
    'ouverture de l'etat
    stDocName = "etats5okok"
    DoCmd.OpenReport stDocName, acPreview
     
    'suppression de la requete req
    CurrentDb.QueryDefs.Delete "requeteAQ"
     
    'supression de la requete req1
    CurrentDb.QueryDefs.Delete "requeteAQSource"
     
    End Sub

Discussions similaires

  1. [AC-2003] Graphique dynamique en vba access
    Par facteur dans le forum VBA Access
    Réponses: 6
    Dernier message: 29/07/2013, 16h03
  2. VBA sur Graphique dynamique dans access
    Par dimis dans le forum VBA Access
    Réponses: 7
    Dernier message: 27/07/2009, 17h22
  3. graphique dynamique à partir de données Access
    Par vivevba dans le forum Excel
    Réponses: 1
    Dernier message: 29/05/2009, 11h28
  4. [Access][03]graphique croisé dynamique
    Par martyshel dans le forum IHM
    Réponses: 9
    Dernier message: 12/04/2007, 21h59
  5. [ACCESS] probleme Etats graphiques
    Par fredrider dans le forum IHM
    Réponses: 4
    Dernier message: 18/07/2006, 12h19

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