XL 2013 gigigg

Dranreb

XLDnaute Barbatruc
Et si on spécifie un pourcentage inférieur à celui qu'on avait spécifié à la situation précédente alors qu'on est toujours sur la même ligne d'origine de l'échéancier qu'est-ce qui se passe ?
Non, non, trop compliqué pour moi, je n'entrerait pas la dedans, je m'y refuse catégoriquement. En tout cas sûrement si on divise les lignes de l'échéancier, parce qu'alors ça complique tout.
Si toutefois vous décidiez de raisonner intégralement à partir des cumuls prévus et réalisés, ce qui en soit simplifierait déjà beaucoup de choses, gardez précieusement dans un coin les fonctions qui suivent, elle pourraient bien vous faciliter la vie :
VB:
Function IntpoLin(ByVal X As Double, ByVal X1 As Double, ByVal Y1 As Double, _
  ByVal X2 As Double, ByVal Y2 As Double) As Double
IntpoLin = Y1 + (Y2 - Y1) * (X - X1) / (X2 - X1)
End Function
Function Montant(ByVal Prct As Double, ByVal P1 As Double, ByVal M1 As Currency, _
  ByVal P2 As Double, ByVal M2 As Currency) As Currency
Montant = Round(M1 + (M2 - M1) * (Prct - P1) / (P2 - P1), 2)
End Function
Function Pourcent(ByVal Mont As Currency, ByVal M1 As Currency, ByVal P1 As Double, _
  ByVal M2 As Currency, ByVal P2 As Double) As Double
Pourcent = P1 + (P2 - P1) * (Mont - M1) / (M2 - M1)
End Function
Function IntpoVar(ByVal X, ByVal X1, ByVal Y1, ByVal X2, ByVal Y2)
IntpoVar = Y1 + (Y2 - Y1) * (X - X1) / (X2 - X1)
End Function
Elle permettent sans trop se casser la tête de trouver un résultat linéaire à partir de deux cas. Par exemple pour afficher combien j'ai pour 50 sachant que pour 0 j'ai 3000 et que pour 100 j'ai 4000 :
VB:
Sub test()
MsgBox Montant(50, 0, 3000, 100, 4000)
End Sub
Naturellement pas obligé de spécifier des constantes, n'importe quelles expressions numériques fonctionnent aussi y compris des Value de cellules ou des éléments de tableaux VBA.
Ça permet aussi bien de trouver à quel pourcentage d'avancement entre deux montants se situe un troisième que … n'importe quoi du même genre.
Au fait : vous devriez partout mettre des formats monétaires sur les montants.
Sinon vous allez forcément vous ramasser bientôt de méchants problèmes de sommes apparemment fausses parce que la plupart des décimales n'ont pas une représentation interne parfaitement exacte en Double, alors qu'en Currency, si !
 
Dernière édition:

BoixosNois

XLDnaute Nouveau
Bonjour,
si on spécifie un pourcentage inférieur il y'a aucun problème parce que c'est un avancement chaque mois on avance un pourcentage il peut être 30% ce mois et 15% le mois prochain l'essentiel c'est qu'on arrive à la fin a 100% pour chaque situation avant de passer à la situation suivante
 

Dranreb

XLDnaute Barbatruc
Bonjour.
C'est en encore pire ! Ce sont des morceux d'un pourcentage ! Et si leur somme dépasse 100 qu'est ce qu'on fait ?
En tout cas vous avez maintenant assez d'éléments pour continuer tout seul. Pour ma part cette affaire commence à m'ennuyer très fortement (comme tout ce qui touche à la finance d'ailleurs). Je ne vais donc probablement plus suivre cette discussion très longtemps.
 

Discussions similaires

Réponses
9
Affichages
133

Statistiques des forums

Discussions
312 196
Messages
2 086 097
Membres
103 116
dernier inscrit
kutobi87