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 :

Eclatement des informations par mois sur une seule ligne [AC-2003]


Sujet :

IHM

  1. #1
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 268
    Points : 130
    Points
    130
    Par défaut Eclatement des informations par mois sur une seule ligne
    Bonjour,

    Quelle est la bonne méthode pour mettre les quantités par mois sur une seule ligne pour chacun des enregistrements?

    J'ai à la base :
    MaTable
    ID_Article
    Mois
    Qte


    et j'aimerais avoir :

    ID_Article QteJanv QteFev ... QteDec
    ID_Article QteJanv QteFev ... QteDec
    ID_Article QteJanv QteFev ... QteDec

    Comme ce problème est rencontré dans pratiquement tous les formulaires, quelle est la bonne façon de procéder?

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    315
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 315
    Points : 243
    Points
    243
    Par défaut
    Bonjour,
    Ma réponse est peut être approximative, voire éloignée de tes souhaits, mais un formulaire croisé dynamique présente les données comme tu le décrits.
    Alain

  3. #3
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 268
    Points : 130
    Points
    130
    Par défaut
    Merci alainb,

    Mais j'aimerais pouvoir contrôler par enregistrement ce qui se passe pour faire de la saisie.

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    315
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 315
    Points : 243
    Points
    243
    Par défaut
    Re
    j'ai trouvé ce bout de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim qry As QueryDef, fd As Field
    Set qry = CurrentDb.QueryDefs("MaRequete")
    For Each fd In qry.Fields
                xlWorksheet.Cells(IntLigne, IntCol) = fd.Name
                IntCol = IntCol + 1
    Next fd
    Je te laisse le soin de l'expertiser

  5. #5
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 268
    Points : 130
    Points
    130
    Par défaut
    En fait c'est du code pour Excel.

    Ceci est l'accès à une cellule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xlWorksheet.Cells(IntLigne, IntCol)
    Je cherche à avoir sur Access un formulaire en continu.

  6. #6
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 944
    Points : 1 282
    Points
    1 282
    Par défaut
    Bonjour
    Si tes informations sont en ligne et que tu veux pouvoir les saisir en colonne, il va falloir passer pas une table intermédiaire, qui se charge par un croisement de tes données, puis lors de déchargement doit éclater les colonnes en ligne.
    Pas spécialement évident tout ça

    Autre solution si tu as vraiement besoin d'une saisie en colonne
    Dans ta table articles tu crées tes 12 colonnes de qté mensuelle + 1 pour l'année
    Frédéric
    Développeur d'Applications Access

  7. #7
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 268
    Points : 130
    Points
    130
    Par défaut
    Merci fgiambelluco,

    j'avais pensé faire ma table avec directement 12 colonnes mais j'ai besoin de faire des liaisons par mois avec d'autres tables.

    Le fait d'éclater mes lignes en colonnes pour une saisie par ligne puis d'éclater mes colonnes en lignes pour renseigner la table prend-t-il beaucoup de temps de traitement?
    Vaut-il mieux avoir le résultat de ce traitement dans une requête utilisée directement dans le formulaire ou avoir le résultat de ce traitement dans une table temporaire créée au lancement du formulaire pour avoir des temps de traitement cours? (j'ai beaucoup d'informations associées qui nécessitent des regroupements à mettre dans le formulaire)

    Même chose pour ces regroupements, vaut-il mieux au lancement du formulaire : faire des tables temporaires pour chaque regroupement et ensuite ouvrir le formulaire => ouverture longue mais j'espère qu'ensuite ce sera fluide)

    Vaut-il mieux faire la mise à jour de la table à la fin en une seule fois ou au fur et à mesure : à chaque changement d'enregistrement (en ligne) et prévoir qqc (pour l'instant je ne sais pas quoi) pour le cas d'un enregistrement modifié suivi d'une sortie.

    ça fait beaucoup de questions, mais je ne suis pas du tout à l'aise avec les temps de traitement.

  8. #8
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 944
    Points : 1 282
    Points
    1 282
    Par défaut
    Re
    Vaut-il mieux avoir le résultat de ce traitement dans une requête utilisée directement dans le formulaire ou avoir le résultat de ce traitement dans une table temporaire créée au lancement du formulaire pour avoir des temps de traitement cours? (j'ai beaucoup d'informations associées qui nécessitent des regroupements à mettre dans le formulaire)
    Pour transformer tes lignes en colonnes, tu vas passer par un requete Ananlyse croisée (donc de regroupement) et elle sera non modifiable. Tu dois passer par une table temporaire que tu chargeras avec le résulats de ta requète.
    L'inconvénient des tables temporaires, c'est que comme on passe notre temps à les vider pour les remplir, la base va 'gonfler' et il faudra compacter régulièrement.
    Mais quand il n'y a pas le choix !!!



    Vaut-il mieux faire la mise à jour de la table à la fin en une seule fois ou au fur et à mesure : à chaque changement d'enregistrement (en ligne) et prévoir qqc (pour l'instant je ne sais pas quoi) pour le cas d'un enregistrement modifié suivi d'une sortie.
    J'aurais tendance à faire une mise à jour globale à la fermeture du formulaire.
    Frédéric
    Développeur d'Applications Access

  9. #9
    Membre habitué
    Inscrit en
    Juillet 2008
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 268
    Points : 130
    Points
    130
    Par défaut
    Bonne idée l'analyse croisée fgiambelluco, effectivement ça me permet d'ouvrir mon formulaire plsu rapidement et je compte donc en profiter pour me passer des tables temporaires.

    Une requête analyse croisée est-elle plus rapide avec ou sans critère(s)?
    Mes tables contiennent chacune plus de 300 000 enregistrements.
    Dans mon formulaire, j'ai 5 analyses croisées et autant dans le sous-formulaire et bien sûr toutes sur des tables différentes.
    Je recherche donc pas le plus facile mais le plus efficace en temps de traitement.

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

Discussions similaires

  1. Comment mettre des inputs radio (modifiés) sur une seule ligne
    Par algerino77 dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 13/11/2014, 17h54
  2. Réponses: 3
    Dernier message: 24/04/2008, 11h42
  3. Réponses: 7
    Dernier message: 25/04/2007, 15h38
  4. Réponses: 7
    Dernier message: 08/03/2007, 13h05
  5. Réponses: 2
    Dernier message: 20/02/2007, 10h29

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