Suite à une demande de création d’une solution de gestion de plan de formation, une solution pyramidale de Google Sheet a été construite. Dans cette solution, il est important de contrôler les délais d’envoi de certains documents comme des convocations, ou des renouvellements de certificats.

Des lenteurs constatées

Durant l’utilisation de cette solution, des lenteurs, visibles, compromettent l’expérience utilisateur.

Après quelques recherches sur Internet, il s’avère que les formules contenant des instructions volatiles comme now (), today() obligent Google Sheet à refaire les calculs après chaque modification.

Contrôle de la mise a jour des données

Afin de contrôler le recalcul des données, un script a été crée. Ce script est à la discrétion de l’utilisateur.

Corps du script

L’idée est d’utiliser un script pour exécuter la formule contenant des fonctions volatiles qui peuvent nuire aux performances des feuilles de calcul. (Now(), today(), etc…..)

Ce script accomplit 4 actions :

1°) Nettoyage de la colonne contenant la formule
2°) Positionnement de la formule de calcul en haut de la colonne avec utilisation de l’instruction arrayformula :

=ARRAYFORMULA(IF(ISBLANK(V3:V); » »;DATEDIF(TODAY();V3:V; »D »)))

3°) Copie de l’ensemble des valeurs obtenues par la formule ci-dessus
4°) Copie des valeurs dans la même colonnes

LAISSER UN COMMENTAIRE

Please enter your comment!
Please enter your name here