Excel 2002 : Tableau croisé dynamique
Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

Excel 2002 : Tableau croisé dynamique



  1. #1
    invitee518b267

    Excel 2002 : Tableau croisé dynamique


    ------

    Bonjour

    Peut-on créer un tableau croisé dynamique en ayant les données à analyser sur plusieurs feuilles d'un même classeur ?


    Par exemple :
    J'ai un classeur qui se nomme "Budget.xls".
    A l'intérieur de ce fichier, j'ai 5 feuilles "Données_croisées", "Année2008", "Année2009", "Année2010", "Année2011".
    Je souhaite effectuer un tableau croisé dynamique (sur la feuille "Données_croisées") en prenant les données situées sur différentes feuilles.


    J'ai essayè mais je rencontre des difficultées pour insérer plusieurs plages ?


    Si, cette action est possible, pouvez-vous s'il vous plait m'aider ?



    Merci
    Bonne journée

    -----

  2. #2
    invite8666d089

    Re : Excel 2002 : Tableau croisé dynamique

    Tu trouveras ci-joint un fichier Excel (zippé) dont la structure (feuilles) est celle que tu nous a donnée. C'est un exemple probablement loin de ton besoin, mais tu ne devrais pas avoir trop de mal à l'adapter. Ici, on a les tableaux d'investissement et de fonctionnement d'une mairie pour les années 2008 à 2011. Dans la 1ère feuille ("Données_croisées") on veut calculer les moyennes des 4 années étudiées. Il suffit de lancer la macro "Moyennes".

    Code:
    Sub Moyennes()
      Dim I, J As Integer
      Dim NbFeuilles As Integer
      Dim Ws As Worksheet
      Dim Total As Double
      Dim NbLignes As Integer
      Dim NbColonnes As Integer
    
      ' Paramétrage
      NbFeuilles = Sheets.Count ' 5 feuilles dont une réceptrice
      NbLignes = 12 ' 12 mois
      NbColonnes = 2 ' 1 colonne investissement + 1 fonctionnement
      
      
      ' On enregistre les moyennes dans la feuille réceptrice
      For I = 2 To NbColonnes + 1
        For J = 2 To NbLignes + 1
            Total = 0
            For Each Ws In ThisWorkbook.Worksheets
                If Ws.Name <> "Données_croisées" Then
                    If IsNumeric(Ws.Cells(J, I)) Then
                        Total = Total + CDbl(Ws.Cells(J, I))
                    End If
                End If
            Next Ws
            ActiveSheet.Cells(J, I) = Total / (NbFeuilles - 1)
        Next J
      Next I
      
    End Sub
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Menu déroulant et graphique croisé dynamique (Excel 2007)
    Par invite05a67b21 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 12/07/2011, 15h38
  2. tableau croisé Macro
    Par invite64656c8a dans le forum Programmation et langages, Algorithmique
    Réponses: 1
    Dernier message: 10/03/2011, 17h22
  3. Excel - Extractions des valeurs non nulles d'un croisé
    Par invite085425ee dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 20/12/2010, 10h49
  4. Excel 2002 : graphiques
    Par invitee518b267 dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 24/09/2010, 12h28
  5. probleme quant aux effectifs nuls pour un tableau croisé
    Par invited00b0ab3 dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 07/08/2009, 13h29
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...