Bonjour,
Je fais encore appel a plus erudit que moi car mon apprentissage du vba ne se fait pas sans quelques difficultes.
En fait je cherche a monter une fonction conditionnelle qui quand la condition est remplie entraine le declenchement d'une macro.
Je sais qu'une fonction de type SI doit imperativement renvoyer a une valeur et qu'il faut donc utiliser une fonction avec une valeur quelconque qui, elle, entraine le declenchement de la macro. Et c'est la que je bute.
Pour simplifier, prenons une macro quelconque, tres basique:
Sub Macro3()
Range("B4").Select
Selection.Copy
Range("C14").Select
ActiveSheet.Paste
End Sub
et une fonction fMacro3() censee renvoyer a la macro dans la fonction conditionnelle ci dessous:
=SI(A11=2, fMacro3(), FAUX)
Maintenant la question: Que dois je ecrire dans la fonction vba pour que celle ci entraine le declenchement de la macro?
J'ai essaye
Public Function fMacro3()
Macro3
fMacro3 = 0
End Function
Mais cela ne fonctionne pas (la cellule affiche 0, alors que vous voudrez justement que ce 0 soit la valeur qui sert de lien entre fonction et macro). J'ai essaye quantite d'autres disposition mais soit cela ne fonctionne pas soit cela entraine des problemes de compilation,
Quelqu'un aurait il une idee svp?
D'avance merci.
Bien cordialement,
Je fais encore appel a plus erudit que moi car mon apprentissage du vba ne se fait pas sans quelques difficultes.
En fait je cherche a monter une fonction conditionnelle qui quand la condition est remplie entraine le declenchement d'une macro.
Je sais qu'une fonction de type SI doit imperativement renvoyer a une valeur et qu'il faut donc utiliser une fonction avec une valeur quelconque qui, elle, entraine le declenchement de la macro. Et c'est la que je bute.
Pour simplifier, prenons une macro quelconque, tres basique:
Sub Macro3()
Range("B4").Select
Selection.Copy
Range("C14").Select
ActiveSheet.Paste
End Sub
et une fonction fMacro3() censee renvoyer a la macro dans la fonction conditionnelle ci dessous:
=SI(A11=2, fMacro3(), FAUX)
Maintenant la question: Que dois je ecrire dans la fonction vba pour que celle ci entraine le declenchement de la macro?
J'ai essaye
Public Function fMacro3()
Macro3
fMacro3 = 0
End Function
Mais cela ne fonctionne pas (la cellule affiche 0, alors que vous voudrez justement que ce 0 soit la valeur qui sert de lien entre fonction et macro). J'ai essaye quantite d'autres disposition mais soit cela ne fonctionne pas soit cela entraine des problemes de compilation,
Quelqu'un aurait il une idee svp?
D'avance merci.
Bien cordialement,