Les excellentes réponses de @karel et @Laurentiu Mirica sont accompagnées d'une mise en garde importante : la fonction d'évaluation ne recalculera pas à moins que la cellule référencée ne change. Par exemple, la cellule C1 contient le texte "A1+B1"
et D1 contient la fonction =eval
. Si les valeurs de A1 ou B1 changent, la cellule D1 n'est pas recalculé .
Ce problème peut être corrigé en introduisant une fonction volatile dans la chaîne ou dans la cellule d'évaluation. Cela forcera un nouveau calcul à chaque fois que la feuille de calcul sera recalculée. Par exemple, la cellule C1 pourrait être remplacée par =if(today(),"A1+B1",)
. Ou bien, D1 peut être remplacé par =if(today(),eval,)
. Toute fonction volatile devrait faire l'affaire.
Une troisième solution, peut-être la plus simple, consiste à modifier la semi-fonction dans le gestionnaire de noms en =if(today(),evaluate(c1),)