O
olivier
Guest
Bonjour a tous, j'ai la fonction suivante:
elle me retourne a chaque fois #valeur!, quelqu'un serait til me dire si elle contient des erreurs.??? Merci d'avance
Olivier
Public Function AnnuiteViagere(Age As Double, TableOuGene As Variant, Differe As Double, TauxActu As Double, TauxRevalo As Double, ModalitePaiement As Boolean, Fractionnement As Integer)
'Remarque: on pourrait utiliser la fonction Nx mais pour des raisons de temps de calcul,nous ne le faisons pas
AnnuiteViagere = 0#
'Controle sur le differe
If Differe < 0 Then
MsgBox ("Erreur: le différé de " & Differe & " ne peut être strictement inférieur à 0.")
Exit Function
End If
'Controle sur le fractionnement
If Fractionnement < 1 Or Fractionnement > 12 Then
MsgBox ("Erreur: le fractionnement doit être compris entre 1 et 12. " & Fractionnement & " n'est pas valable.")
ElseIf (Fractionnement - Int(Fractionnement)) <> 0 Then
MsgBox ("Erreur: le fractionnement doit être une valeur entière. ")
Else
AnnuiteViagere = AnnuiteViagereImmediateIllimitee(Age, TableOuGene, TauxActu, TauxRevalo, ModalitePaiement, Fractionnement) - AnnuiteViagereImmediateTemporaire(Age, TableOuGene, Differe, TauxActu, TauxRevalo, ModalitePaiement, Fractionnement)
End If
End Function
elle me retourne a chaque fois #valeur!, quelqu'un serait til me dire si elle contient des erreurs.??? Merci d'avance
Olivier
Public Function AnnuiteViagere(Age As Double, TableOuGene As Variant, Differe As Double, TauxActu As Double, TauxRevalo As Double, ModalitePaiement As Boolean, Fractionnement As Integer)
'Remarque: on pourrait utiliser la fonction Nx mais pour des raisons de temps de calcul,nous ne le faisons pas
AnnuiteViagere = 0#
'Controle sur le differe
If Differe < 0 Then
MsgBox ("Erreur: le différé de " & Differe & " ne peut être strictement inférieur à 0.")
Exit Function
End If
'Controle sur le fractionnement
If Fractionnement < 1 Or Fractionnement > 12 Then
MsgBox ("Erreur: le fractionnement doit être compris entre 1 et 12. " & Fractionnement & " n'est pas valable.")
ElseIf (Fractionnement - Int(Fractionnement)) <> 0 Then
MsgBox ("Erreur: le fractionnement doit être une valeur entière. ")
Else
AnnuiteViagere = AnnuiteViagereImmediateIllimitee(Age, TableOuGene, TauxActu, TauxRevalo, ModalitePaiement, Fractionnement) - AnnuiteViagereImmediateTemporaire(Age, TableOuGene, Differe, TauxActu, TauxRevalo, ModalitePaiement, Fractionnement)
End If
End Function