Fusion plusieurs feuilles dans un tableau croisé dynamique

stephan59

XLDnaute Nouveau
Bonsoir,

J'ai vu d'autres posts sur le forum sur le sujet, mais rien qui ne réponde à mon souci.

J'un classeur Fusion Produits composé de 12 feuilles de jan à déc plus une 13ème Annuel qui devrait me donner le total pour l'année. Les 12 feuilles mensuelles se composent d'une liste identique de Produits et de deux autres colonnes variables Lieu et quantités.

Mais j'arrive pas à fusionner sur la feuille Annuel le total des 12 feuilles qui donne le détail Produits par Lieu et par Quantités. Il n'y a que le total des 12 feuilles par Articles et des zéros à la place des Lieu. Voir fichier annexé

Même en essayant les formats de cellules, les filtres dans les colonnes etc... j'vois pas. Quelqu'un peu m'aider, s'il vous plait ?

Merci bien
 

Pièces jointes

  • Fusion Produits.xlsx
    36.8 KB · Affichages: 50
  • Fusion Produits.xlsx
    36.8 KB · Affichages: 66
  • Fusion Produits.xlsx
    36.8 KB · Affichages: 63

Paritec

XLDnaute Barbatruc
Re : Fusion plusieurs feuilles dans un tableau croisé dynamique

Bonjour Stephan59 le forum
bon alors le fichier est bien là mais tu veux quoi???? car tu as des produits des lieu et des dates !!!!!!!!!!!!!!!!!!!!!!!!
il faut faire une synthèse de quoi??? avec quoi d'autre ???? mis comment ???????????????
car je suppose que pour les produits aa en lieu B du 15/03:2015 c'est pas pareil que les produits aa en lieu C du 15/03/2015 ???
des explications claires et on va faire!! le plus simple et de reprendre ton fichier exemple et de faire un tableau récapitulatif manuellement comme tu souhaites l'obtenir et tu repasses le fichier
a+
Papou:)

EDIT: Bonjour JC:)
 
Dernière édition:

JCGL

XLDnaute Barbatruc
Re : Fusion plusieurs feuilles dans un tableau croisé dynamique

Bonjour à tous,
Salut Papou,

Un TCD ne te retournera pas de valeurs non numériques.
Il sera capable de te nombrer ces valeurs non numériques si tant est que tu places le champ au bon endroit.

A+ à tous
 

stephan59

XLDnaute Nouveau
Re : Fusion plusieurs feuilles dans un tableau croisé dynamique

Bonjour JCGL et Paritec,

Merci pour vos éléments de réponse. J'ai joint au message présent le fichier qui indique sur l'onglet Annuel le résultat manuel recherché. Je n'y ai mis que le résultat pour les produits aa, c'est le même principe pour les autres produits. Les colonnes Date figurant dans les feuilles de Jan à Dec ne sont pas à intégrer dans le TCD, c'est vrai que j'aurais dû ne pas lister les Date.

Le résultat escompté sont les quantités par Articles et par Lieu. Si le problème est dû au fait que toutes les valeurs des colonnes doivent être numériques, je pourrait remplacer la valeur du Lieu B par le chiffre 1 par exemple, le F par 2 et les D par 3. Navré pour mon manque de clarté.

Bonne fin de Pâques Stephan59
 

Pièces jointes

  • Fusion Produits.xlsx
    38.2 KB · Affichages: 47
  • Fusion Produits.xlsx
    38.2 KB · Affichages: 64
  • Fusion Produits.xlsx
    38.2 KB · Affichages: 52

klin89

XLDnaute Accro
Re : Fusion plusieurs feuilles dans un tableau croisé dynamique

Bonsoir JCGL, Paritec, stephan59, le forum :)

Si j'ai bien compris, cela devrait le faire en gardant la même structure dans les feuilles à traiter.
Résultat dans la feuille "Annuel"
VB:
Option Explicit

Sub Fusion()
Dim dico As Object, ws As Worksheet, txt As String, i As Long, a, w
    Set dico = CreateObject("Scripting.Dictionary")
    dico.CompareMode = 1
    For Each ws In Worksheets
        If ws.Name <> "Annuel" Then
            a = ws.Cells(1).CurrentRegion.Value
            For i = 2 To UBound(a, 1)
                txt = Join$(Array(a(i, 1), a(i, 3)))
                If Not dico.exists(txt) Then
                    ReDim w(1 To 3)
                    w(1) = a(i, 1)
                    w(2) = a(i, 3)
                    dico(txt) = w
                End If
                w = dico(txt)
                w(3) = w(3) + Val(a(i, 2))
                dico(txt) = w
            Next
        End If
    Next
    'Restitution et mise en forme
    Application.ScreenUpdating = False
    With Sheets("Annuel").Cells(1)
        .CurrentRegion.Clear
        .Resize(, 3).Value = [{"Produits","Lieu","Quantité"}]
        .Offset(1).Resize(dico.Count, 3).Value = _
        Application.Transpose(Application.Transpose(dico.items))
        With .CurrentRegion
            .Font.Name = "calibri"
            .Font.Size = 10
            .HorizontalAlignment = xlCenter
            .VerticalAlignment = xlCenter
            .Borders(xlInsideVertical).Weight = xlThin
            .BorderAround Weight:=xlThin
            With .Rows(1)
                .Font.Size = 11
                .Interior.ColorIndex = 38
                .BorderAround Weight:=xlThin
            End With
        End With
    End With
    Application.ScreenUpdating = True
End Sub
klin89
 

Pièces jointes

  • Fuson Produits.xls
    101.5 KB · Affichages: 50

Amilo

XLDnaute Accro
Re : Fusion plusieurs feuilles dans un tableau croisé dynamique

Bonsoir à tous,

Une autre solution, sans VBA et avec un TCD en SQL,

Pas très compliqué à réaliser mais trop long à expliquer,
Aussi, je vous mets un Ce lien n'existe plus qui détaille la façon de faire,
Pour cet exemple, s'inspirer de la 2ème partie de la page à savoir après le titre en vert intitulé, "Cas complexes :"

Cela fonctionne très bien,

Edit : En pièce jointe, quelques informations complémentaires en image par rapport au lien ci-dessus

Cordialement
 

Pièces jointes

  • Source de données SQL.jpg
    Source de données SQL.jpg
    37.3 KB · Affichages: 61
Dernière édition:

chris

XLDnaute Barbatruc
Re : Fusion plusieurs feuilles dans un tableau croisé dynamique

Bonjour à tous

Un TCD multi sources, comme tu l'as fait avec l'assistant, ne peux fonctionner que si tu n'as qu'un niveau d'analyse.

Ici tu as lieu et date, donc 2 niveaux.

Si tu veux un TCD, comme Amilo je conseille Msquery mais la solution la plus simple serait de ne pas avoir 12 onglets mais un seul : la date suffisant à définir le mois...
 

stephan59

XLDnaute Nouveau
Re : Fusion plusieurs feuilles dans un tableau croisé dynamique

Bonjour à tous et merci à Paritec, JCGL, Klin89, Amilo et Chris

Plusieurs de vos solutions répondent à ma question ou apportent une piste que je peux adapter au résultat recherché.


Je vois que vous avez passé pas mal de temps à étudier le topo et que votre travail est très professionnel. Il me faudra décortiquer tous les éléments apportés, car en plus des solutions spécifiques au problème, d'autres suggestions m'ouvrent diverses ouvertures à exploiter.

Grand merci. Je vais annoter la discussion comme résolue.

Stephan59
 

Discussions similaires

Statistiques des forums

Discussions
312 579
Messages
2 089 880
Membres
104 298
dernier inscrit
MarieCB