Re : fonction "INDIRECT"
Re,
D'abord il faut savoir que tu met une colonne dynamiquement en utilisant indirect alors que ta ligne est statique. J'ai juste mise ET la ligne Et la colonne dynamiquement.
J'avais inscrit +34 car c'était le nombre de colonne utilisé pour Organe par Unité.
Mais bon ce chiffre ne sert a rien.
C'est plutot + 10 qu'il fallait prendre. Soit le nombre de ligne utilisées -1.
si on décortique cette formule.
=DECALER(INDIRECT($I$6&$I$7);0;0;NBVAL(INDIRECT($I$6& $I$7 & ":" &$I$6 & $I$7+ 10 ));1)
La fonction Décaler prend 5 paramètre. La référence de départ, la ligne, la colonne, la hauteur, la largeur.
Ligne et colonne permettent un déplacement. Ici je mets 0 et 0 car je n'en veux pas.
Hauteur et largeur permettent la dimension. Ici la largeur est 1. Et la hauteur est le nombre d'éléments. Autrement dit, si j'ai 5 éléments, ma liste va en avoir 5. Si j'ai 10 éléments ma liste va en avoir 10.
Pour calculer la hauteur j'utilise la fonction NBVAL.
Pour cela j'ai besoin de la ligne de départ et de la ligne de fin.
La ligne de départ est en I7
Et la ligne de fin est I7 + 10
La colonne étant I6
I6= BS
I7= 1634
ca renvoie donc NBVAL(BS1634:BS1644) qui est égale a 2
Donc...
=DECALER(INDIRECT($I$6&$I$7);0;0;NBVAL(INDIRECT($I$6& $I$7 & ":" &$I$6 & $I$7+ 10 ));1)
s'inscrit
=DECALER(INDIRECT($I$6&$I$7);0;0;2;1)
Ma référence ici est la cellule de départ
Soit INDIRECT($I$6&$I$7) qui me renvoie= BS1634
Alors
=Decaler(BS1634;0;0;2;1), ca me renvoie une matrice d'une hauteur de 2, largeur de 1 qui commence à la cellule BS1634.
Pas sur que c'est clair