Rechercher : dans
Par :

Excel : graph sur 12 mois glissant

Dernière réponse le 21 mar 2009 à 22:47:23 tuany, le 15 mar 2005 à 16:10:54 
 Signaler ce message aux modérateurs

Je doit crée un graph sur une periode de 12 mois glissant, cad on est en mars donc les données doivent aller d'avril 2004 a mars 2005 et le mois prochain de mai 2004 a avril 2005 etc...
aidez moi :)
merci!!!

1

Armojax, le 15 mar 2005 à 17:55:42

Hello tuany,

Juste une question : est-ce que tes mois glissent vraiment (1er exemple ci-dessous : on ajoute une nouvelle colonne chaque mois), ou tournes-tu toujours sur les mêmes 12 mois (mars 2005 ré-occupe la place de mars 2004) ?

   Mois  02  03  04  05  06  07  08  09  10  11  12 |01  02  03 
Données   5   6   7   2   5   6   1   3   5   7   2 | 6   3   1
                 <----------------------------------|--------->
                                               2004 | 2005
Ou bien

   Mois  01  02  03  04  05  06  07  08  09  10  11  12 
Données   6   3   1   7   2   5   6   1   3   5   7   2
         <-------->  <-------------------------------->
          2005                     2004

Répondre à Armojax

4

legege31, le 27 aoû 2008 à 10:39:26

Je suis confronté au meme probleme mais avec la configuration numero 2

Mois 01 02 03 04 05 06 07 08 09 10 11 12
Données 6 3 1 7 2 5 6 1 3 5 7 2
<--------------------------------><---------------------->
2008 2007

D'avance merci
legege31

Répondre à legege31

5

G.David, le 27 aoû 2008 à 11:06:27

Tu peut regarder l'aide avec la fonction " mois.decaler( fin.mois(aujourdhui())+1 ;-1)
ce qui devrait te donner la date du premier du mois en cours .à placer en douzieme colonne
en onzieme colonne mois.decaler(cellule colonne 12;-1) à tirer vers la gauche
en dessous un recherchev(cellule au dessus;tableau;2,faux) a tirer sous toutes ta ligne de mois
pour ton tableau
dans insertion nom
tableau = decaler (coin sup gauche;0;0;nbval(colonne gauche);2)
ce qui devrait rendre le tableau dynamique
je ne peut pas être plus précis je travaille sans excel sous la main le respect n'est pas un dû
il se merite

Cordialement
G.David

Répondre à G.David

6

legege31, le 28 aoû 2008 à 09:02:43
  • +1

Merci pour ton intervention mais je ne penses pas avoir tout saisi. Je continu à creuser.

Répondre à legege31

7

G.David, le 28 aoû 2008 à 09:10:51

Essayes de poser ta question sur XLD ou veriti
http://www.excel-downloads.com
http://www.veriti.net/forum/
ce que je t'explique te sera fourni avec exemple

le respect n'est pas un dû
il se merite

Cordialement
G.David

Répondre à G.David

8

legege31, le 28 aoû 2008 à 15:12:59

J'ai suivi tes conseils et j'ai eu les réponses à mes questions.
Merci pour tout
Legege31

Répondre à legege31

9

Sampeur, le 15 mar 2009 à 12:44:25

Je ne comprends pas bien
Qu'est-ce que ça veut dire mois.decaler ?

Merci pour ta réponse

Répondre à Sampeur

10

 G.David, le 21 mar 2009 à 22:47:23

Mois.decaler
est une fonction d'excel elle se trouve dans les macros complémentaires sur les version antérieur à 2007
Outils
macros complementaires
tu coches (de mémoire ) outil d'analyses

ce qui va ajouter tout un tas de fonctions statistique à Excel ainsi que des fonctions dates
l'emploi est relativement simple

 MOIS.DECALER( b6;2)

en B6 tu as une date : le 15/03/2009 la formule ci-dessus est en C6
en C6 tu obtiens 15/05/2009 l
attention le format est bien un nombre pas un texte la date sera un décalage en mois date à date
ce qui est assez amusant c'est que le 31/01/08 decaler d'un mois donne le 29/02/08 mais le 28/02/09 decaler d'un mois dans le futur donne ..le 28/03/09
la prise en compte des variations de durée des mois est fonctions de leur position
il existe une autre fonction date FIN.MOIS(date;N) qui va reporter la date au dernier jour du mois situer à N mois de celui de référence
--
le respect n'est pas un dû il se mérite  
Cordialement     G.David

Répondre à G.David

2

Armojax, le 16 mar 2005 à 09:20:51

Hello tuany,

Ton PB est-il toujours d'actualité ? Au cas où, voici quelques éléments. Faute de réponse, je suppose que tes données glissent vraiment, comme dans le cas 1 ci-dessus.
Dans mon exemple, je suppose que les noms (ou numéros) de mois qui servent d'étiquettes sur l'axe horizontal sont en ligne 1, et les données correspondantes en ligne 2.
Au changement de mois, le graphique doit utiliser de nouvelles colonnes pour glisser. Dans les macros ci-dessous, ColDeb est la nouvelle colonne de début, ColFin la nouvelle colonne de fin. Tu dois être capable de les calculer par la macro de lancement.
Je montre 2 cas :
- le graphique se trouve dans une feuille graphique différente de la feuille de données (macro Glisse_1)
- le graphique se trouve dans la feuille de calcul elle-même (macro Glisse_2).
(Dans la macro de lancement, appelle la bonne macro).

Adapte à ton cas personnel.

Sub Lancement()
    Dim ColDeb As Integer, ColFin As Integer
    ColDeb = 2                  ' nouvelle colonne de début
    ColFin = 13                 ' nouvelle colonne de fin
    Call Glisse(ColDeb, ColFin)
End Sub
Sub Glisse_1(ColDeb, ColFin)    ' graphique dans feuille graphique séparée
    With Charts("Graph1")
        .SeriesCollection(1).XValues = "=Feuil1!R1C" & ColDeb & ":R1C" & ColFin
        .SeriesCollection(1).Values = "=Feuil1!R2C" & ColDeb & ":R2C" & ColFin
    End With
End Sub
Sub Glisse_2(ColDeb, ColFin)    ' graphique dans même feuille de calcul
    Sheets("Feuil1").Activate
    ActiveSheet.ChartObjects("Graphique 1").Activate
    With ActiveChart
        .SeriesCollection(1).XValues = "=Feuil1!R1C" & ColDeb & ":R1C" & ColFin
        .SeriesCollection(1).Values = "=Feuil1!R2C" & ColDeb & ":R2C" & ColFin
    End With
End Sub

Répondre à Armojax

3

tuany, le 16 mar 2005 à 10:09:06

Mes données sont du type

Mois 02 03 04 05 06 07 08 09 10 11 12 |01 02 03
Données 1 2 3 4 5 6 7 8 9 10 11 |12 13 14
<-------------------------------------------|--------->
2004 | 2005
cad une feuille historique regroupant les données, je voulai savoir o cas ou on peu utiliser une fonction excel , c'est au cas ou quelqu'un d'autre que moi souhaite faire une modification.
merci beaucoup pour ta macro :)

Répondre à tuany