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.
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.