[XL 2007 VBA] pb fonction personnalisée

marie -  
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai créé une fonction sous VBA (Public Function dans Module1) que j'utilise à plusieurs endroits dans une même feuille et dans plusieurs feuilles.

Quand j'appelle la fonction par "=mafonction", le résultat s'affiche correctement.
Mais si je copie la formule, ou si je modifie un élément qui intervient dans le calcul de ma fonction, le résultat ne s'affiche pas ou ne se met pas à jour. Du coup, je suis obligée de sélectionner chaque cellule de toutes les feuilles où j'utilise la fonction, de faire F2 et de cliquer sur ENTREE. C'est très lourd.

J'ai vérifié que "Calcul automatique" était bien sélectionné.
J'ai essayé en plaçant la macro "function" dans "ThisWorkBook", mais ça ne fonctionne pas mieux.

N'y a-t-il pas un moyen plus simple que de sélectionner individuellement chaque cellule pour avoir le calcul à jour ?

Merci par avance.
Marie

Configuration : OFFICE EXCEL 2007
A voir également:

1 réponse

eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Bonsoir,

Tout dépend comment a été conçue ta fonction.
Tu peux forcer sa réévaluation à chaque recalcul en mettant au début: application.volatile
Mais si tu l'utilises 1000 fois tout sera recalculé même si ce n'est pas necessaire.
Essaie de voir d'abord si c'est normal qu'elle ne soit pas réévaluée, selon les valeurs qu'elle utilise. Par exemple si tu as besoin d'une couleur de cellule regarde si tu ne peux pas récupérer l'info autrement (test d'une autre cellule, ..)

eric
0