Bonsoir,

j'ai créée un tableau comparatif entre 2012 et 2011. Les valeurs de 2011 sont affichées en absolue. Or je souhaite à présent avoir la différence et non pas la valeur absolue par rapport à 2011.
J'ai bcp de feuilles dans plusieurs fichiers sur lesquels je dois appliquer ces changements. Du coup, en VBA, cela sera plus rapide.

Dans ma feuille excel, j'ai une colonne avec en D7 la formule de 2011:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
=INDIRECT.EXT("["&$A$1-1&".xlsm]"&NOMFEUILLE()&"!"&CELLULE("adresse";C7))
cela va me chercher la valeur de 2011 dans un autre fichier.
par rapport à cette formule je souhaite obtenir:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
=(C7-INDIRECT.EXT("["&$A$1-1&".xlsm]"&NOMFEUILLE()&"!"&CELLULE("adresse";C7)))/INDIRECT.EXT("["&$A$1-1&".xlsm]"&NOMFEUILLE()&"!"&CELLULE("adresse";C7))
C7 est la valeur 2012 qui se trouve toujours la cellule à gauche de la laquelle on travaille.

ensuite je le transforme en pourcentage et ajuste les décimaux avec

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Selection.Style = "Percent"
Selection.NumberFormat = "0.00%"
j'ai également une autre formule pour 2011 qui est déjà au format %. Dans la cellule F7 j'ai la formule suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
=INDIRECT.EXT("["&$A$1-1&".xlsm]"&NOMFEUILLE()&"!"&CELLULE("adresse";E7))
sur celle ci je souhaite simplement faire:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
=E7-=INDIRECT.EXT("["&$A$1-1&".xlsm]"&NOMFEUILLE()&"!"&CELLULE("adresse";E7))
E7 est la valeur 2012.



La valeur de 2012 est toujours la cellule dans la colonne à gauche de la cellule que l'on modifie.

J'ai commencé à travailler avec l'enregistreur de macro et le .FIND() mais je bloque complétement.
D un point de vue logique, je pense que le codage va intégrer: find, une condition basée sur le format de la cellule (% ou nombre), DECALER car on utilise la cellule dans la colonne de gauche.

C'est la piste que j'ai pour le moment mais je ne sais pas du tout la mettre en œuvre.
d avance merci !!

ps: si plus clair, je peux transmettre un extrait du fichier.