L
lardi
Guest
Lorsque j'essaye de modifier le contenu d'une cellule Excel dans le code d'une function VBA, la function s'execute jusque avant l'instruction d'affectation de la cellule puis s'interromp sans autre forme de procès.
en clair, voici le code utilisé dans un nouveau module créé dans VBA:
-----
Function updatecell()
Cells(2, 2).Value = '123'
End Function
-----
lorsque j'appelle cette fonction dans une cellule quelconque ( =updatecell() ), j'obtiens dans cette cellule #valeur! et le contenu de la cellule B2, n'a pas été mis à jour.
Si par contre j'appelle cette fonction depuis un sub lié par exemple à un bouton créé sur la feuille de calcul, là, pas de problème.....
Pourquoi la function se 'plante-t-elle' sur cette instruction lorsqu'elle est appellée directement depuis la feuille excell.
A noter que dans le code original, il y a des calculs qui sont faits dans la function et que je peux vérifier avec des msgbox mais pas moyen d'écrire les résultats dans des cellules. C'est evervant !
merci pour vos réponses.
en clair, voici le code utilisé dans un nouveau module créé dans VBA:
-----
Function updatecell()
Cells(2, 2).Value = '123'
End Function
-----
lorsque j'appelle cette fonction dans une cellule quelconque ( =updatecell() ), j'obtiens dans cette cellule #valeur! et le contenu de la cellule B2, n'a pas été mis à jour.
Si par contre j'appelle cette fonction depuis un sub lié par exemple à un bouton créé sur la feuille de calcul, là, pas de problème.....
Pourquoi la function se 'plante-t-elle' sur cette instruction lorsqu'elle est appellée directement depuis la feuille excell.
A noter que dans le code original, il y a des calculs qui sont faits dans la function et que je peux vérifier avec des msgbox mais pas moyen d'écrire les résultats dans des cellules. C'est evervant !
merci pour vos réponses.