Appel d'une Function dans formule SI

Résolu
chaumon Messages postés 4 Statut Membre -  
chaumon Messages postés 4 Statut Membre -
Bonjour,

J'ai une fonction SI dans la cellulle N2 qui appelle une Function :
SI (J2="OUI";Action();"")

Code de la function
Function Action()
    Dim MyValue As String
    MyValue = InputBox("Entrer le numéro de l'action !")
    ActiveSheet.Cells("M2").Value = MyValue
End Function


Mon soucis la valeur entrée dans l'inputbox ne s'affiche pas dans la cellule M2...

Merci pour votre aide

3 réponses

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

une fonction personnalisée retourne une valeur et ne peut en aucun cas modifier une cellule.

Tu peux faire :
Function Action() As String  
    Dim MyValue As String   
    MyValue = InputBox("Entrer le numéro de l'action !")   
    Action = MyValue   
End Function

et dans M2 :
=SI(J2="OUI";Action();"")
tu y récupères la saisie.

eric

Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
1
chaumon Messages postés 4 Statut Membre
 
Merci beaucoup erci,

ça marche parfaitement.

Cdt
0
via55 Messages postés 14730 Date d'inscription   Statut Membre Dernière intervention   2 750
 
Bonjour

Essaie avec

ActiveSheet.Range("M2").Value = MyValue

ou

ActiveSheet.Cells(13,2).Value = MyValue

Cdlmnt
0
chaumon Messages postés 4 Statut Membre
 
Merci via55,

J'ai testé les deux solutions et ça ne fonctionne toujours pas.

Quand la valeur est fausse la formule fonctionne, mais quand la valeur est vraie (appel de la Function), j'ai l'erreur suivante "#VALEUR" dans la cellule contenant la formule.

Cdlmmt.
0