Re : La fonction Decaler
Bonjour tout le monde
Comme l'avait suggéré Brigitte, il faut commencer à lire l'aide en ligne de la fonction.
Ton post
me fait dire que tu ne l'as pas lu.
Elle n'est peut-être pas installée sur ta machine.
DECALER
Afficher tout
Masquer tout
Renvoie une référence à une plage qui correspond à un nombre déterminé de lignes et de colonnes d'une cellule ou plage de cellules. La référence qui est renvoyée peut être une cellule unique ou une plage de cellules. Vous pouvez spécifier le nombre de lignes et de colonnes à renvoyer.
Syntaxe
DECALER(réf;lignes;colonnes;hauteur;largeur)
réf est la référence par rapport à laquelle le décalage doit être opéré. L'argument réf doit être une référence à une cellule ou à une plage de cellules adjacentes ; sinon, la fonction DECALER renvoie la valeur d'erreur #VALEUR!.
lignes est le nombre de lignes vers le haut ou vers le bas dont la cellule supérieure gauche de la référence renvoyée doit être décalée. Si l'argument lignes est égal à 5, la cellule supérieure gauche de la référence est décalée de cinq lignes en dessous de la référence. L'argument lignes peut être positif (c'est-à-dire en dessous de la référence de départ) ou négatif (c'est-à-dire au-dessus de la référence de départ).
colonnes est le nombre de colonnes vers la droite ou vers la gauche dont la cellule supérieure gauche de la référence renvoyée doit être décalée. Si l'argument colonnes est égal à 5, la cellule supérieure gauche de la référence est décalée de cinq colonnes vers la droite par rapport à la référence. L'argument colonnes peut être positif (c'est-à-dire à droite de la référence de départ) ou négatif (c'est-à-dire à gauche de la référence de départ).
hauteur est la hauteur, exprimée en nombre de lignes que la référence renvoyée doit avoir. L'argument hauteur doit être un nombre positif.
largeur est la largeur, exprimée en nombre de colonnes que la référence renvoyée doit avoir. L'argument largeur doit être un nombre positif.
Notes
Si les arguments lignes et colonnes décalent la référence au-delà du bord de la feuille de calcul, la fonction DECALER renvoie la valeur d'erreur #REF!.
Si les arguments hauteur ou largeur sont omis, les valeurs par défaut des arguments hauteur et largeur sont celles de l'argument réf.
La fonction DECALER n'a pas pour rôle de décaler physiquement les cellules dans la feuille ni de modifier la sélection ; elle renvoie simplement une référence. La fonction DECALER peut être utilisée avec toutes les fonctions exigeant une référence comme argument. Par exemple, la formule SOMME(DECALER(C2;1;2;3;1)) calcule la valeur totale de la plage couvrant 3 lignes sur 1 colonne et se situant 1 ligne en dessous et 2 colonnes à droite de la cellule C2.
Exemple
L'exemple sera plus compréhensible si vous le copiez dans une feuille de calcul vide.
Procédure
1. Créez un classeur ou une feuille de calcul vide.
2. Sélectionnez l'exemple de la rubrique d'aide. Ne sélectionnez pas les en-têtes des lignes ou des colonnes.
Sélection d'un exemple de l'aide
3. Appuyez sur CTRL+C.
4. Dans la feuille de calcul, sélectionnez la cellule A1 et appuyez sur CTRL+V.
5. Pour passer de l'affichage des résultats à celui des formules permettant de renvoyer les résultats, appuyez sur CTRL+` (apostrophe), ou dans le menu Outils, pointez sur Audit des formules, puis cliquez sur Mode d'audit des formules.
Quelque exemple de formule
=DECALER(C3;2;3;1;1) Affiche la valeur contenue dans la cellule F5 (0)
=SOMME(DECALER(C3:E5;-1;0;3;3)) Totalise la plage C2:E4 (0)
=DECALER(C3:E5;0;-3;3;3) Renvoie une erreur, car la référence ne se trouve pas sur la feuille de calcul (#REF!)
Ce qui n'est pas dit dans l'aide
Hauteur,
largeur ne doivent pas être égale à 0, ce qui est normal, une référence doit contenir au minimum 1 cellule. Ces deux arguments sont facultatif.
Cas d'utilisation de cette fonction.
1) Dans le cas d'une liste de validation, si celle-ci est évolutive, c'est-à-dire que les items peuvent évolués, tu as plusieurs possibilités :
- soit tu indiques une plage de cellules, contenant des cellules vides, ce qui évite de modifier la plage définie dans la boîte de dialogue.
- soit tu modifies à chaque évolution de tes items, les plages, donc tu as une maintenance à faire.
- soit tu utilises cette fonction, qui permet par calcul de déterminer la plage.
2) Tu as une énorme base de donnée, tu utilises la fonction SOMMEPROD, les temps de calculs sont importants. Cette base de données est triée par un critère, Cette falcultée de déterminer une plage de cellules, te permettra de diminuer les temps de calcul.
3) Quand on utilise la fonction SOMMEPROD, qui ne permet pas des plages entières (A:A) dans les arguments, et au lieu de définir une plage fixe, on utilise cette fonction.
4) Dans des formules matricielles utilisant la fonction SOUS.TOTAL. Il y a des exmples sur le forum. En gros elle permet de hacher ligne par ligne une plage de cellules pour permettre un contrôle.
Il y a certainement d'autres cas.
Fonction équivalente : INDIRECT(ADRESSE), INDEX
J'espère que ce complément d'informations cumulé aux exemples de formules données par JB, Roger, Chris, te permettra de te faire ta propre idée d'utilisation de cette fonction.
@+Jean-Marie