Cette formule est destinée à renvoyer la valeur de la cellule $H6 de 6 en 6.
Soit un décalage de colonnes de 0 puis 6 puis 12 puis 18, ...
Le décalage (qu'on nommera X) doit donc successivement valoir 0, 6, 12, 18, ...
La formule devient DECALER($H6;0;X)
Comment faire varier X de 6 en 6.
Le pas sera de 6 et vaudra 6*0, 6*1, 6*2, 6*3, ...
Il faut donc trouver un moyen ou une fonction qui commence à 0 et qui ensuite s'incrémentera de 1 à chaque copie vers la cellule à droite.
Pour cela, on va compter le nombre de colonnes depuis la colonne qu'on désigne par $A. La colonne A de départ est toujours la même d'où le $. Le $ va rendre la référence (colonne A) absolue. De ce fait, si $A intervient dans une formule, la copie vers la droite restera à $A.
L'astuce est de compter le nombre de colonnes à partir de la colonne $A. Pour cela, on utilise COLONNES($A:A) qui renvoie le nombre de colonnes contenu dans $A:A.
Quand on va copier cette formule vers la droite la formule devient successivement:
COLONNES($A:A) puis COLONNES($A:B) puis COLONNES($A:C) puis COLONNES($A : D), ...
ce qui donne: 1 puis 2 puis 3 puis 4 puis ...
Nous y sommes presque : On veut en fait partir de 0 et la formule fait débuter à 1.
Il faut retirer 1 de la formule pour obtenir 0, 1, 2, 3, ...
Soit COLONNES($A:A)-1 puis COLONNES($A:B)-1 puis COLONNES($A:C)-1 puis COLONNES($A: D)-1, ...
La première formule devient donc : DECALER($H6;0;X) avec X=6 * (COLONNES($A:A)-1)
(COLONNES($A:A)-1) variant de un par un à partir de 0, 6*(COLONNES($A:A)-1) va varier de 6 à partir de 0.
Je me reconnecte sur mon PC du bureau à 22H un vendredi pour vous remercier. L'explication est limpide et je pense que je vais pouvoir ré-utiliser l'astuce.
Un grand merci pour avoir pris le temps.
PS : c'est un truc hyper simple sur excel ou ça devient un peu compliqué là ? Je me rends compte qu'en entreprise nous en avons une utilisation plus que limitée, c'est dommage.