Pb de fonction avec ActiveCell

frbcn9

XLDnaute Nouveau
Bonjour,

J'ai créé la fonction suivante :

Function Calcul(Montant As Currency)
Calcul = Round(Montant * 0.15 * (ActiveCell.Offset(0, -1).Value - ActiveCell.Offset(-1, -1).Value) / 365, 2)
End Function

Il s'agit d'un calcul d'intérêts en fonction d'un montant et d'un nombre de jours calculés entre deux dates, qui se trouvent sur la cellule immédiatement à gauche et au-dessus. Le montant est une somme de valeurs extraite de la feuille.

Lorsque je valide la fonction, tout de passe parfaitement. Mais quand je modifie l'un des composants de la zone montant dans la feuille d'origine, le résultat se recalcule automatiquement de manière erronée. Je crois comprendre que, dans ce cas, l'ActiveCell n'est pas la cellule attendue (qui contient l'appel de la fonction), mais une cellule quelconque de la feuille.

Existe-t-il un moyen de résoudre ce problème ?

Je vous remercie par avance de votre aide.
 
T

Tenormadness

Guest
Bonjour,
pour ta solution

Function Calcul(Montant As Currency, Date1 as Date, Date2 as Date)
Calcul = Round(Montant * 0.15 * (Date2 - Date1) / 365, 2)
End Function

Et lorsque tu tapes ta foirmule dans ta cellule, tu pointes pour le deuxième et le troisème argument les cellules correspondantes

Et ça doit calculer normalement...
Non

AVEHEUGOUDEDAY

Tenormadness
 

Discussions similaires

Statistiques des forums

Discussions
312 679
Messages
2 090 858
Membres
104 677
dernier inscrit
soufiane12