Bonjour,

J'ai un fichier avec dans un module VBA, une fonction qui me permet d'écrire automatiquement un montant en lettres (ConvNumberLetter). Dans une cellule de ce fichier, j'ai la fonction qui est intégrée dans un message du genre :

="Vous nous devez "&A$1&" € ("&ConvNumberLetter($A$1;1;0)&")."

Ce fichier est un fichier de "génération". Il me permet de créer automatiquement des nouvelles feuilles selon un modèle prédéfini. Mais archivage oblige, j'ai besoin de déplacer la feuille générée dans un nouveau classeur.

J'ai donc un bouton qui me permet de faire ça.

Là où ça se complique, c'est que ces fichiers sont partagés sur un DropBox. Ce qui veut dire que plusieurs personnes (sur plusieurs ordinateurs) sont amenées à générer des feuilles et à les exporter. Mais comme elles ont besoin de la fonction ConvNumberLetter, j'ai donc également trouvé un moyen de copier le module VBA dans le nouveau classeur créé.

Et tout marche nickel, à une exception près : dans le nouveau classeur, la cellule dans laquelle mon message apparaît comporte une erreur de type #NOM?. Il faut que je la sélectionne et que je fasse "Entrée" pour qu'elle s'affiche correctement.

D'où ma question (enfin !) : Est-ce qu'il est possible de faire cette manœuvre en VBA ? J'ai fait des recherches sur bon nombre de forums, mais à chaque fois je tombe sur "Application.Calculate". Après avoir essayé de multiples façons (Calcul du classeur entier, de la feuille ou simplement de la cellule concernée), cette commande ne fonctionne pas. Je pense dû au fait que ce n'est pas une valeur numérique mais un texte.

Des idées ?