CONSOLIDATION DE DONNEES SANS TCD

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

safranien

XLDnaute Occasionnel
Bonjour

à partir d'une base de données (500 lignes), j'aimerais consolider les montants selon plusieurs critères. Je ne souhaite pas utiliser des TCD mais des formules. Sachant que le rendu sera par la suite pour un publipostage.
Je vous joins un exemple (il y a plus de colonnes qui seront prévues pour faire mon regroupement).

J'espère que vous pourrez m'aider.

Merci d'avance.
 

Pièces jointes

Bonjour

Utiliser SOMME.SI.ENS ou SOMMEPROD

Edit : Coucou JHA 🙂

Edit 2 : A noter que si le TCD est correctement paramétré rien n'empêche de l'utiliser en publipostage et que Word sait convertir les nombre en lettres...
 
Dernière édition:
Bonjour

merci pour vos retours rapides. JHA, je ne veux pas supprimer quoique ce soit dans ma base de données puisque je vais la renseigner tout au long de l'année.
Chris, je vais voir si j'arrive avec sommeprod à faire quelque chose. Meme si il faut que je refasse un tableau à la mimine reprenant l'ensemble des valeurs que je ne veux avoir qu'une fois puis faire mon sommeprod.
J'aurais aimé que ce tableau de synthèse se fasse "tout seul" (avec des formules de suppression de doublon par exemple). Si je viens à ajouter une société 5 et un nouveau centre, je serai obligé d'ajouter cette nouvelle société et ce nouveau centre dans mon tableau de synthèse. J'aimerais qu'ils s'ajoutent automatiquement si c'est possible.

Merci
 
Re

Ci-joins Excel + Commutateur Word pour Chiffres en lettres
Chiffres_lettres.png
 

Pièces jointes

Bonsoir à tous, 🙂

Une autre approche :
Efface le contenu de la cellule A1
VB:
Option Explicit
Sub regrouper()
Dim a, i As Long, j As Long, n As Long, txt As String, dico As Object
    Set dico = CreateObject("Scripting.Dictionary")
    dico.CompareMode = 1
    a = Sheets("Feuil1").Range("a2").CurrentRegion.Value
    n = 1
    For i = 2 To UBound(a, 1) - 1
        txt = Join(Array(a(i, 3), a(i, 4)), Chr(2))
        If Not dico.exists(txt) Then
            n = n + 1: dico(txt) = n
            For j = 1 To UBound(a, 2)
                a(n, j) = a(i, j)
            Next
        Else
            a(dico(txt), 5) = a(dico(txt), 5) + a(i, 5)
        End If
    Next
    With Sheets.Add().Cells(1).Resize(n, 5)
        .Value = a
        With .Offset(.Rows.Count, .Columns.Count - 1).Resize(1, 1)
            .Formula = "=sum(r2c:r[-1]c)"
        End With
    End With
End Sub
klin89
 
re
merci. Par contre je dois mal écrire le texte pour le publipostage, ça me met "Champ de fusion non valide". J'écris MERGEFIELD à la main mais peut être faut-il l'appeler via un menu?
{ MERGEFIELD<Somme_de_montant_>\*CardText}
J'ai le double <> quand j'insère un champ de fusion.

J'ai réussi en insérant le champ de fusion Somme_de_montant, puis clic droit, modification du champ, code de champ et ajout du \*CardText. Par contre, si j'ai des montants avec des centimes, cela ne me le converti pas en texte avec les centimes mais ça arrondi le montant.

Sinon est ce possible d'insérer un champ calculé dans le TCD avec la formule pour convertir le montant en lettres (=ConvNumberLetter(E2;1;0))?
 
Dernière édition:
RE

Non pas possible d'intégrer dans le TCD, éventuellement dans une cellule à côté...
Sinon possible dans Word mais un peu compliqué alors je te joins l'exemple : il faudra modifier la source (chemin).
1ère ligne sans décimales, 2ème ligne avec tous les codes nécessaires à l'affichage des centimes
ALT F9 pour afficher tous le codes de champs.

Il ne faut jamais écrire les accolades à la main : utiliser les champs prévus pour publipostage ou, a minima, CTRL F9 pour avoir les accolades qui indiquent un champ et compléter.
Mais la syntaxe est, comme dans Excel, très pointilleuse...
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
11
Affichages
716
Réponses
1
Affichages
951
Retour