1. Ce site utilise des "témoins de connexion" (cookies) conformes aux textes de l'Union Européenne. Continuer à naviguer sur nos pages vaut acceptation de notre règlement en la matière. En savoir plus.

XL 2016 Récupérer des données pour créer une potence comptable

Discussion dans 'Forum Excel' démarrée par cgpa, 12 Novembre 2017.

  1. cgpa

    cgpa XLDnaute Junior

    Inscrit depuis le :
    14 Novembre 2012
    Messages :
    90
    "J'aime" reçus :
    1
    Sexe :
    Masculin
    Habite à:
    Waimes
    Utilise:
    Excel 2010 (PC)
    Bonjour à tous,
    Je tente de créer un livre comptable mais j'ai un problème pour récupérer et présenter des données regroupées.
    J'aimerais par formule ou macro récupérer certaines données d'un tableau afin de les présenter sous forme de potence comptable. J'ai bien tenté avec le filtre avancé ou le tableau croisé dynamique, mais je n'y parviens pas. Il y a peut-être plus facile comme démarche.
    Je joins un fichier avec une explication de ma demande sur la feuille "grand livre" et "grand livre 2".
    Un grand merci d'avance à toute personne se penchant sur ce problème, même s'il ne propose pas de solution.
     

    Pièces jointes:

  2. CHALET53

    CHALET53 XLDnaute Barbatruc

    Inscrit depuis le :
    26 Juillet 2006
    Messages :
    3227
    "J'aime" reçus :
    69
    Habite à:
    Verchaix
    Utilise:
    Excel 2007 (PC)
    bonsoir,
    J'ai tenté un truc sur la feuille Grand Livre (c'est quand même une usine à gaz)
    Lance le programme avec le bouton Lance
    Harmonisation des contenus : difficile d'avoir code à gauche et code à droite
    Je ne peux guère faire plus
    Bon courage
     

    Pièces jointes:

    cgpa aime votre message.
  3. djidji59430

    djidji59430 XLDnaute Accro

    Inscrit depuis le :
    3 Février 2014
    Messages :
    1117
    "J'aime" reçus :
    84
    Habite à:
    Dunkerque
    Utilise:
    Excel 2013 (PC)
    Bonjour,

    En formule
     

    Pièces jointes:

    cgpa aime votre message.
  4. cgpa

    cgpa XLDnaute Junior

    Inscrit depuis le :
    14 Novembre 2012
    Messages :
    90
    "J'aime" reçus :
    1
    Sexe :
    Masculin
    Habite à:
    Waimes
    Utilise:
    Excel 2010 (PC)
    Bonsoir Chalet53,
    Un tout grand merci pour ce code et le temps que tu as passé pour résoudre mon problème.
    Je ne comprends pas toutes les lignes du code, j'ai essayé de le "traduire" en bout de ligne car je désire le transposer pour la 2ème page du grand livre. Par contre, je ne comprends pas l'usage de la colonne P. Comme je pense que tru m'as mis sur la voie, peux-tu m'expliquer? Merci beaucoup.
     

    Pièces jointes:

  5. cgpa

    cgpa XLDnaute Junior

    Inscrit depuis le :
    14 Novembre 2012
    Messages :
    90
    "J'aime" reçus :
    1
    Sexe :
    Masculin
    Habite à:
    Waimes
    Utilise:
    Excel 2010 (PC)
    Bonsoir djidji59430,
    Merci beaucoup pour cette formule qui marche bien.
    Je tente de la comprendre pour pouvoir l'exploiter dans une autre feuille.
    Je ne connaissais pas la formule AGREGAT et je ne comprends pas les aides d'Excel à ce sujet.
    Pouvez-vous m'expliquer cette partie: INDEX('livre journal'!$G$3:$G$23;AGREGAT(15;6;LIGNE($A$1:$A$21)/('livre journal'!$C$3:$C$23='Grand livre'!$A$15);LIGNES($1:1))) ?
    Merci beaucoup pour la formule que vous m'avez offerte et le temps que vous avez consacré à mon problème.
     
  6. djidji59430

    djidji59430 XLDnaute Accro

    Inscrit depuis le :
    3 Février 2014
    Messages :
    1117
    "J'aime" reçus :
    84
    Habite à:
    Dunkerque
    Utilise:
    Excel 2013 (PC)
    Re
    Pour creer la liste, on recherche l'equiv de {petite.valeur(si('livre journal'!$C$3:$C$23='Grand livre'!$A$15);LIGNE($A$1:$A$21));LIGNES($1:1))} qui recherche les lignes de la matrices qui correspondent a la condition ('livre journal'!$C$3:$C$23='Grand livre'!$A$15) et que l'on range avec la valeur LIGNES($1:1) qui se modifie en descendant. Or cette formule pour fonctionner doit etre matricielle.
    La forme AGREGAT(15 correspond a petite.valeur matricielle, mais sans matrice, ce qui va plus vite et AGREGAT(15;6 ignore les erreurs engendrées par /('livre journal'!$C$3:$C$23='Grand livre'!$A$15) qui font des #div/0 pour les valeurs qui ne correspondent pas a la condition.

    Cdlmnt
     
    Dugenou aime votre message.
  7. CHALET53

    CHALET53 XLDnaute Barbatruc

    Inscrit depuis le :
    26 Juillet 2006
    Messages :
    3227
    "J'aime" reçus :
    69
    Habite à:
    Verchaix
    Utilise:
    Excel 2007 (PC)
    Bonjour,
    Bien que l'option proposée par djidji soit intéressante, je réponds à ta première question sur la colonne P
    Afin d'établir des potences uniquement pour les comptes ayant enregistré des opérations, je sélectionne les comptes de la colonne C du livre journal sans doublon c'est le premier programme exécuté lorsqu'on lance à partir du bouton Lance

    a+
     
  8. cgpa

    cgpa XLDnaute Junior

    Inscrit depuis le :
    14 Novembre 2012
    Messages :
    90
    "J'aime" reçus :
    1
    Sexe :
    Masculin
    Habite à:
    Waimes
    Utilise:
    Excel 2010 (PC)
    Merci beaucoup pour cette explication qui me sera utile pour d'autres applications.
     
  9. cgpa

    cgpa XLDnaute Junior

    Inscrit depuis le :
    14 Novembre 2012
    Messages :
    90
    "J'aime" reçus :
    1
    Sexe :
    Masculin
    Habite à:
    Waimes
    Utilise:
    Excel 2010 (PC)
    Merci beaucoup pour l'explication. Cette manière de procéder est également très intéressante: j'aurai matière à progresser (ou tenter, tout du moins...). encore merci.
     
  10. cgpa

    cgpa XLDnaute Junior

    Inscrit depuis le :
    14 Novembre 2012
    Messages :
    90
    "J'aime" reçus :
    1
    Sexe :
    Masculin
    Habite à:
    Waimes
    Utilise:
    Excel 2010 (PC)
    Merci DjiDji
    Je vais adapter un mixte de votre proposition et celle de Chalet 53 (pour une autre feuille du fichier). Chalet53 m'a déjà permis d'extraire sans doublon avec une macro au lieu de filtrer.
    Concernant la formule que vous m'avez écrite, j'ai un problème lorsque les données à afficher sont nombreuses. En effet, j'aurai au final 50 potences maximum avec 30 opérations par potence max. Lorsque j'applique la formule, à un moment il y aune erreur de données. Je pense que c'est dans la référence de AGREGAT. Pouvez-vous voir où je me trompe dans le fichier annexé? J'y ai indiqué l'endroit problématique en orange sur la feuille "Grand Livre" en ligne 120. Merci d'avance si vous me lisez.
     

    Pièces jointes:

  11. djidji59430

    djidji59430 XLDnaute Accro

    Inscrit depuis le :
    3 Février 2014
    Messages :
    1117
    "J'aime" reçus :
    84
    Habite à:
    Dunkerque
    Utilise:
    Excel 2013 (PC)
    Re
    j'ai amélioré les formules, mais l'idéal, c'est vraiment le TCD !
    Car, en le faisant a partir du tableau, (inserer avant la derniere ligne), le tcd peut etre mis a jour.
    Cdlmnt
     

    Pièces jointes:

    cgpa aime votre message.
  12. cgpa

    cgpa XLDnaute Junior

    Inscrit depuis le :
    14 Novembre 2012
    Messages :
    90
    "J'aime" reçus :
    1
    Sexe :
    Masculin
    Habite à:
    Waimes
    Utilise:
    Excel 2010 (PC)
    Bonjour Djidji, Merci beaucoup pour d'une part l'adaptation de la formule, et d'autre part le TCD. J'ai matière à travailler. Excellente journée!
     
  13. cgpa

    cgpa XLDnaute Junior

    Inscrit depuis le :
    14 Novembre 2012
    Messages :
    90
    "J'aime" reçus :
    1
    Sexe :
    Masculin
    Habite à:
    Waimes
    Utilise:
    Excel 2010 (PC)
    Bonjour Chalet 53,
    J'ai bien avancé grâce à votre aide et vous en remercie. Après l'avoir compris, j'ai adapté le code. J'ai pu trouver pour renvoyer le code à gauche, ça marche.
    J'ai pu créer mes 50 potences et le code renvoie bien au bon endroit pour les 50.
    Afin de clarifier le document, j'ai ajouté une macro pour effacer le contenu de la feuille sauf les formules (module 3).
    Mais là j'ai un petit souci: la macro "essai" que vous avez rédigée supprime le contenu de la dernière ligne de la colonne P jusqu'à la cellule P2. Lorsque j'utilise la macro d'effacement et que je relance la macro Essai, la macro Essai ne renvoie plus correctement les codes dans la colonne P. J'ai bien essayé d'ajouter une petite ligne obligeant de garder du contenu en P2 et P3, mais ça ne marche pas. Pouvez-vous jeter un œil?
    Merci beaucoup.
     

    Pièces jointes:

  14. CHALET53

    CHALET53 XLDnaute Barbatruc

    Inscrit depuis le :
    26 Juillet 2006
    Messages :
    3227
    "J'aime" reçus :
    69
    Habite à:
    Verchaix
    Utilise:
    Excel 2007 (PC)
    Quelques modifications
     

    Pièces jointes:

  15. cgpa

    cgpa XLDnaute Junior

    Inscrit depuis le :
    14 Novembre 2012
    Messages :
    90
    "J'aime" reçus :
    1
    Sexe :
    Masculin
    Habite à:
    Waimes
    Utilise:
    Excel 2010 (PC)
    Bonjour Chalet53,
    Merci pour cette solution. Malheureusement, le code efface les données de la colonne P mais pas celles de la feuille. Or, j'ai besoin de retrouver une feuille vierge (sans effacer les formules ex. B15) car lorsque je relance la macro Essai avec le bouton Lance, celle-ci écrase bien les anciennes données mais laisse apparaître des anciennes données dans les dernières potences si les nouvelles données sont moins nombreuses. Sans trop perdre de temps, connaissez-vous un moyen d'utiliser la formule que j'avais pour effacer tout sauf les formules et combiner avec votre formule d'effacement pour la colonne P? A défaut, je compléterai la macro en ajoutant manuellement les plages de cellules à effacer.
    Un tout grand merci pour votre collaboration à la réalisation de ce fichier. Bonne journée,
     
  16. CHALET53

    CHALET53 XLDnaute Barbatruc

    Inscrit depuis le :
    26 Juillet 2006
    Messages :
    3227
    "J'aime" reçus :
    69
    Habite à:
    Verchaix
    Utilise:
    Excel 2007 (PC)
    Bonjour,

    Peut-être comme cela si j'ai compris

    A suivre
     

    Pièces jointes:

  17. cgpa

    cgpa XLDnaute Junior

    Inscrit depuis le :
    14 Novembre 2012
    Messages :
    90
    "J'aime" reçus :
    1
    Sexe :
    Masculin
    Habite à:
    Waimes
    Utilise:
    Excel 2010 (PC)
    C'est parfaitement cela, merci beaucoup Chalet 53.
    Afin de nettoyer le tableau des potences, j'ai créé un filtre en colonne O afin de n'afficher que les lignes dans lesquelles il y a une donnée dans la plage des potences (économie de papier à l'impression). Mais ce filtre affiche quand même les lignes des totaux même quand la potence est vierge. J'ai alors tenté un code VBA en module 5 après avoir longtemps cherché dans les aides, mais ce code masque toutes les lignes de la plage. Pouvez-vous me conseiller dans ma démarche?
     

    Pièces jointes:

  18. CHALET53

    CHALET53 XLDnaute Barbatruc

    Inscrit depuis le :
    26 Juillet 2006
    Messages :
    3227
    "J'aime" reçus :
    69
    Habite à:
    Verchaix
    Utilise:
    Excel 2007 (PC)
    Une autre approche (un peu tiré par les cheveux)
    J'ai fait en colonne Q15 la somme des colonnes A15:N15 et recopie vers le bas
    Les lignes sans chiffres affichent 0
    J'ai fait un filtre sur cette colonne
    J'affiche tout sauf les 0
    ça doit te donner le résultat que tu attends
    A voir
     
    cgpa aime votre message.
  19. cgpa

    cgpa XLDnaute Junior

    Inscrit depuis le :
    14 Novembre 2012
    Messages :
    90
    "J'aime" reçus :
    1
    Sexe :
    Masculin
    Habite à:
    Waimes
    Utilise:
    Excel 2010 (PC)
    Excellente idée, j'essaie de suite. Merci!
     
  20. cgpa

    cgpa XLDnaute Junior

    Inscrit depuis le :
    14 Novembre 2012
    Messages :
    90
    "J'aime" reçus :
    1
    Sexe :
    Masculin
    Habite à:
    Waimes
    Utilise:
    Excel 2010 (PC)
    Bonjour Chalet53,
    J'ai pu avancer sur ce fichier grâce à ton aide. J'ai adapté la macro et ai créé une autre feuille "grand livre client" sur cette base et ça fonctionne. Mais ici en voulant ajouter une potence "générale" ça décale tout et j'ai un problème car je pense ne pas maitriser cette macro: accepterais-tu de regarder la feuille "Grand livre client Essai" ? d'avance, merci pour ton aide si tu me lis.
     

    Pièces jointes:

Partager cette page