La fonction SCAN est une nouvelle fonction propagée d'Excel 365 qui s'adresse avant tout à des développeurs ou des scientifiques. Son intérêt principal c'est d'optimiser la mémoire pour des calculs longs ou complexes.
Dans cet article, nous allons voir plusieurs exemple de l'intérêt d'utiliser la fonction SCAN.
Utilité de la fonction SCAN
La fonction SCAN est une fonction CUMULATIVE.
Dans Excel, il existe de nombreuses façon de faire des sommes cumulatives mais cela nécessite de faire un calcul pour chaque cellule utilisé. Avec la fonction SCAN, nous allons obtenir exactement le même résultat mais avec une seule formule. Donc même si nous retournons un résultat sur 100 lignes, au niveau de la mémoire nous n'aurons qu'une seule formule.
Construction de la fonction SCAN
La fonction SCAN a besoin de une ou plusieurs matrices (ou plus simplement de plage de cellules) et opère une opération mathématique sur ces matrices. La fonction s'écrit de la façon suivante :
- Valeur de départ. Donnée facultative
- Matrice de valeurs. Ca peut être du nombre ou du Texte
- Fonction Lambda pour faire le calcul attendu.
=SCAN(Valeur de départ; Matrice ; LAMBDA())
Le rôle de la fonction LAMBDA c'est d'indiquer la nature du calcul que nous allons réaliser. Ca peut être une somme, une multiplication ou une jointure entre 2 chaînes de caractères.
Somme cumulative avec la fonction SCAN
Dans l'exemple suivant, nous allons effectuer la même somme cumulative que l'exemple précédent mais nous allons le faire en une seule formule
- Nous allons commencer par écrire le nom de la fonction
- Puis nous allons laisser le premier argument vide. Il n'y a pas de valeur initiale à indiquer
- Ensuite nous allons sélectionner les cellules avec les valeurs à additionner
- Enfin, nous allons écrire notre opérateur avec la fonction LAMBDA.
Comment s'interprète l'écriture de LAMBDA.
- Le x correspond au premier argument de la fonction qui est vide
- Le y correspond aux cellules B2:B13
- L'opération x+y indique que les 2 éléments vont être ajouté
- Mais attention, à chaque nouvelle valeur lue, le résultat précédent va lui-même être additionné.
- Autrement dit, le + indique que la valeur initiale et la valeur lue seront additionnées mais aussi l'addition sera répété pour chaque ligne
Investissement cumulatif
Toujours en ayant le principe de cumul, nous pouvons aussi utiliser la fonction SCAN pour afficher le gain obtenu tous les mois. Nous allons reprendre l'exemple de versements périodiques mais ici, une seule formule va être nécessaire.
- Le premier argument va être la valeur initiale : 0
- Le second argument c'est une suite de valeur 100 (le montant versé chaque mois) répété 12 fois le nombre d'année
- SEQUENCE(12*$B$4;;$B$5;0)
- Le dernier argument c'est l'opération elle même de l'ajout du taux d'intérêt au montant cumulé + le nouveau versement
- LAMBDA(x;y;(x+y)*(1+$B$3))
Maintenant imaginez que vous vouliez faire la même simulation mais pour 10 années. La même formule va s'adapter automatiquement au 120 lignes nécessaire pour afficher le résultat. En terme d'optimisation c'est vraiment parfait car Excel ne gère qu'une seule formule et pas 120 comme cela était nécessaire avant l'invention de cette fonction.
Utilisation avec du texte
Mais vous pouvez également faire une suite cumulative de lettres avec la fonction SCAN.
Prenons une chaîne de caractères que nous découpons avec un caractère par cellule (formule vue dans cet article)
Et si nous remplaçons le deuxième argument de la fonction SCAN par cette fonction, nous obtenons le résultat suivant