DECALER est une fonction d'Excel qui renvoie une plage relativement à une plage de référence. Elle demande de 3 à 5 arguments
Arg1: la plage de référence. Cette plage peut être unicellulaire
Arg2: Par rapport à la cellule supérieure gauche de Arg1, nombre de lignes de décalage pour trouver le coin supérieur gauche de la plage retournée par la fonction. Ce nombre peut être positif (on descend), négatif (on monte), ou nul (on reste sur place), mais il ne doit pas permettre que l'on sorte de la feuille
Arg3: Par rapport à la cellule supérieure gauche de Arg1, nombre de colonnes de décalage pour trouver le coin supérieur gauche de la plage retournée par la fonction. Ce nombre peut être positif (on va à droite), négatif (on va à gauche), ou nul (on reste sur place), mais il ne doit pas permettre que l'on sorte de la feuille
Arg4 (facultatif): Précise le nombre de lignes de la plage retournée. Si omis, Excel utilise le nombre de lignes de Arg1
Arg5 (facultatif): précise le nombre de colonnes de la plage retournée. Si omis, Excel utilise le nombre de colonnes de Arg1
DECALER($A$1;5;7) pointe vers la plage H6
DECALER($A$1;5;7;2;3) pointe vers la plage H6:J7
DECALER($A$1:$B$4;5;7) pointe vers la plage H6:I9
etc...
L'intérêt de la formule est que l'on peut utiliser des résultats d'autres fonctions d'Excel comme paramètres, ce qui rend la fonction dynamique.
Pour nommer une plage dynamique en fonction de l'exemple de la gestion du stock.
Se placer sur la feuille des mouvements. Selon mon exemple, on démarre la saisie en A1 avec en ligne 1 les intitulés de colonnes, et des données en dessous. On veillera à ne pas avoir d'intitulés de colonnes vides (donc aucune cellule vide en ligne 1 entre la colonne A et la dernière colonne du tableau). On veillera à n'avoir aucune cellule vide en colonne A entre la ligne 1 et la dernière ligne utilisée du tableau. Cela permettra de délimiter facilement la plage de données.
Insertion/Noms/Définir... et attribuer un nom à la plage (par ex Mouvements. Dans la zone fait référence à, saisir
=DECALER($A$1;0;0;NBVAL($A:$A);NBVAL($1:$1))
et cliquer sur Ajouter. Excel va ajouter le nom de la feuille dans la formule. Cliquer sur OK. La plage dynamique nommée Mouvements est créée et va évoluer en fonction de NBVAL($A:$A) pour le nombre de lignes et NBVAL($1:$1) pour le nombre de colonnes...
Il suffit, à la création du TCD, étape 2, de mentionner =Mouvements pour la source du TCD et le tour est joué.
Il faudra juste penser à mettre le tableau à jour via un clic droit dans une cellule du tableau, ou par un petit code à l'activation de la feuille.
Partager