En souvenir de mon tout premier logiciel - qui fonctionne d'ailleurs toujours super bien - polykromy, voici une version avancée de la mise sous forme d'arc-en-ciel d'une plage de données.
J'ai ajouté plusieurs options, mais n'hésitez pas si vous avec d'autres idées ou si vous avez des bugs.
Vous trouverez plus bas un lien pour accéder à plus d'une heure de vidéo et au fichier avec le code VBA commenté.
Pour accéder à une vidéo de plus d'une heure d'explication et au fichier avec les commentaires, vous pouvez l'acheter pour 19€. La vidéo et le code seront disponibles le 25 janvier.
Là, ca devient de plus en plus ésotérique, mais bon, je ne suis plus à ça près 🙂
Préambule
L'objectif de cette vidéo est de bien comprendre comment les nouvelles fonctions LET et LAMBDA se comportent et jusqu'où on peut aller.
Avec Powerquery, ici ou là, on arrive au même résultat beaucoup plus facilement.
Cette explication est basée sur ce post (vidéo) et celui-ci, ainsi que sur la fonction Lambda. En fonction de votre niveau, cela peut être une bonne idée de les consulter au préalable.
Transformation en formule plus universelle et utilisation de Lambda
Voici une explication complète de la nouvelle fonction qui permet de rapatrier aussi les titres, ce qui va grandement faciliter les références à tout le tableau pour un TCD.
J'attendais avec impatience la sortie de cette fonction qui devrait permettre de faire beaucoup de choses plus simplement et rapidement qu'auparavant.
En gros, Lambda permet de créer une fonction définie par l'utilisateur et ensuite de la réutiliser dans le classeur. Une utilisation avancée permet de créer une fonction récursive.
Exemple simple
Par exemple, si je tape :
=LAMBDA(n;n+1)(3)
J'obtiens 4. La fonction se lit comme :
Passe n en variables. Ajoute 1 à n. Teste la fonction avec la valeur 3. Le résultat de la fonction est donc 4.
Le (3) permet de tester, mais on va le retirer lors de la création du nom.
Ensuite, on va créer la formule dans le gestionnaire de noms. Ne pas oublier le signe = et aussi d'enlever le (3)
=LAMBDA(n;n+1)
Et on peut tester :
Voici un autre exemple tiré du site de Microsoft qui va compter le nombre de mots dans une phrase.