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 :

Créer un état avec cellules fusionnées


Sujet :

IHM

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2006
    Messages : 93
    Points : 99
    Points
    99
    Par défaut Créer un état avec cellules fusionnées
    Salut à tous

    J'ai une bd dans laquelle j'enregistre les demandes d'autorisation d'absences du personnel (Tbl_Personnel et Tbl_AutAbs). Je dois produire un état trimestriel dans lequel il faut regrouper les demandes par membre. Quand je fais ce regroupement j'obtiens plusieurs fois le nom du membre en sur les lignes le concernant. Dans word ou Excel on peut fusionner les cellules contenant la même valeur et obtenir qqchose comme dans la piece jointe
    Quelqu'un a t-il une astuce
    Merci pour votre aide
    Images attachées Images attachées  

  2. #2
    Membre averti Avatar de Oliv'83
    Homme Profil pro
    Directeur commercial
    Inscrit en
    Mars 2008
    Messages
    421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Directeur commercial
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Mars 2008
    Messages : 421
    Points : 309
    Points
    309
    Par défaut
    Bonsoir,

    Il doit te suffire d'utiliser la fonction "Regrouper et trier" de ton Etat et de Regrouper par le nom.

    Oliv'

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2006
    Messages : 93
    Points : 99
    Points
    99
    Par défaut
    Merci pour l'interet
    ça je sais le faire : regrouper trier, mais je voudrais que le nom du membre se soit pas répété dans la section détail.
    Il doit y avoir un code vba à insérer sur l'évènement au formatage de la section détail
    Merci pour votre aide

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 345
    Points : 23 805
    Points
    23 805
    Par défaut
    En Access tu peux demander de ne pas répéter les doubles tu obtiendrais :

    Toto, Valeur 1, Valeur 2
    , valeur 3, Valeur 4

    Toto, Valeur 6, Valeur 7
    , valeur 8, Valeur 9.

    Je ne me souviens plus exactement où c'est mais ce doit être une propriété de la section détail.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2006
    Messages : 93
    Points : 99
    Points
    99
    Par défaut
    salut marot_r

    il faut certainement du code pour redimensionner le control contenant le nom et si possible centrer le contenu en face des autres ligne concernant le meme membre

  6. #6
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 345
    Points : 23 805
    Points
    23 805
    Par défaut
    Je ne pense pas qu'on puisse facilement arriver à faire des cellules fusionnées en Access c'est pour cela que je te suggère l'option 'Ne pas répéter les doubles'. Access fait cela de lui-même sans une seule ligne de code et le résultat est assez proche de celui recherché.

    Tu peux aussi explorer l'export vers Excel avec fusion de célulle en Excel mais ce sera sans doute plus de travail.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  7. #7
    Expert éminent sénior

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 469
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 469
    Points : 16 349
    Points
    16 349
    Par défaut
    Bonjour

    Autre solution : mettre le nom dans la zone groupe et non dans le détail.

    En Excel la fusion apporte plus de problèmes que d'avantages.

    A mon avis ce n'est pas faisable dans Access sauf en trichant pour trouver la valeur se situant au milieu par rapport au nombre de lignes (marche pas vraiment pour les nombres pairs ) et en modifiant la couleur des autres.
    Chris
    PowerQuery existe depuis plus de 13 ans, est totalement intégré à Excel 2016 &+. Utilisez-le !

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
    Confucius

    ----------------------------------------------------------------------------------------------
    En cas de résolution, n'hésitez pas cliquer sur c'est toujours apprécié...

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2006
    Messages : 93
    Points : 99
    Points
    99
    Par défaut
    salut 78chris!

    si je mets le control dans l'entete de groupe, j'obtiens


    toto
    ----------------------------
    .
    .
    .
    titi
    -------------------------------

    alors que je voudrais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    ++++++++++++++++++++++++++++++++
    +               +              
    +               +++++++++++++++++++++++
    +  Toto       +
    +               +++++++++++++++++++++++
    +               +
    +++++++++++++++++++++++++++++++++
    +               +              
    +  Titi         +++++++++++++++++++++++
    +               +
    + +++++++++++++++++++++++++++++++
    Excusez moi pour les balises code c'est le seul moyen que j'aitrouvé pour maintenir mon texte en forme

  9. #9
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Dans les propriétés de format du champ, il suffit de passer la propriété Masquer Doublon sur Oui

    Bonne continuation
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 85
    Points : 114
    Points
    114
    Par défaut
    Bonjour

    Citation Envoyé par Jeannot45 Voir le message
    Dans les propriétés de format du champ, il suffit de passer la propriété Masquer Doublon sur Oui
    Oui, mais cela ne permettra pas de centrer la donnée, elle sera toujours en haut, non ? De plus on aura pas le cadrage.

    J'avais mis une discussion avec un lien sur un article qui permettait de dessiner dans les états, pourquoi n'apparait-il plus ?

    Edit : je remets le lien http://starec.developpez.com/tuto/ecriredessineretats/
    PeyePo

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2006
    Messages : 93
    Points : 99
    Points
    99
    Par défaut
    j'étudie l'article du lien
    @+

  12. #12
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    En bidouillant un peu, on arrive facilement à l'image ci-jointe. L'idée est de transformer la section de gauche en sous état et de tout caler pour que les bordures s'alignent. Un code VBA tout simplement vient ensuite ajuster la taille de la zone de texte de droite.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
    Dim n As Integer
     
    n = DCount("*", "matable", "eleve=" & Chr(34) & Me.Eleve.Value & Chr(34)) * 397
    Me.txtEleve.TopMargin = CInt((n - 397) / 2)
    Me.txtEleve.Height = n
    Me.Détail.Height = n
    End Sub

    ci-joint l'image et la base car assez difficile à expliquer. La constante 397 correspond à la hauteur de mes lignes 0.7 cm en twips.
    Images attachées Images attachées  
    Fichiers attachés Fichiers attachés

  13. #13
    Membre habitué Avatar de anouar_chaieb
    Inscrit en
    Mai 2004
    Messages
    276
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Mai 2004
    Messages : 276
    Points : 178
    Points
    178
    Par défaut
    Bonjour,

    Samloba:
    Quand je fais ce regroupement j'obtiens plusieurs fois le nom du membre en sur les lignes le concernant
    Oliv'83:
    Il doit te suffire d'utiliser la fonction "Regrouper et trier" de ton Etat et de Regrouper par le nom.
    Samloba:
    ça je sais le faire : regrouper trier, mais je voudrais que le nom du membre se soit pas répété dans la section détail.
    Pour le regroupement de style classique:
    Si tu as le problème de répitition voir la relation entre les tables. Et pour un bon regroupement il faut que ce soit sur un ID unique, il se peut que deux personnes portent le même nom
    Quel est le plus rapide? lire le FAQ:

    http://access.developpez.com/faq/ Ou bien créer un post?

  14. #14
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Quel rapport avec le besoin à savoir l'illusion d'une fusion vericale dans la section Détails ?

  15. #15
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2006
    Messages : 93
    Points : 99
    Points
    99
    Par défaut
    Salut Tofalu
    Des que j'ai une bonne connection je télécharge et étudie ta soluce

  16. #16
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    A noter que dans mon exemple, j'ai fait au plus simple avec une seule table, mais on peut considérer que matable est une requête retournant des données.

    Il faudrait surement peaufiner de telle sorte qu'une section détail de l'état principal ne soit pas couper par un saut de page (section insecable) faute de quoi la fusion risque de cafouiller

    Le plus dur est le positionnement des contrôles. Idéalement, il faut définir les tailles et les positions en VBA de telle sorte à être sûr des alignements. Attention aussi aux propriétés auto extensible et auto réductible qui doivent être fixées à Non

  17. #17
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2006
    Messages : 93
    Points : 99
    Points
    99
    Par défaut
    Bravo Tofalu
    Dans mon pays on dirait "C'est pas homme, c'est génie!"
    Belle preuve de la puissance d'access+vba. En fait la programmation est plus une affaire d'idées que de tel ou tel langage.
    Mille merci. Pourrais-tu formaliser cette astuce pour la FAQ pour en faire profiter le plus grand nombre?

  18. #18
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Pourrais-tu formaliser cette astuce pour la FAQ pour en faire profiter le plus grand nombre?
    Si j'ai mis une base de données en exemple (ce que je fais rarement) c'est justement parce que je n'avais pas le temps de rédiger. Mais ce post reste de côté pour plus tard

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

Discussions similaires

  1. Créer un état avec des lignes vides
    Par sarmad354 dans le forum IHM
    Réponses: 1
    Dernier message: 25/11/2007, 18h56
  2. Créer un état avec des factures
    Par 4rn0_o dans le forum VBA Access
    Réponses: 12
    Dernier message: 24/08/2007, 20h20
  3. Créer un arbre avec cellules (treeview)
    Par Scritch852 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/03/2007, 12h22
  4. créer un état avec Crystal Report
    Par paradeofphp dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 25/05/2006, 12h11
  5. Réponses: 2
    Dernier message: 26/04/2006, 08h53

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