Landoltp
Messages postés68Date d'inscriptionmercredi 1 août 2007StatutMembreDernière intervention14 mars 2008
-
15 oct. 2007 à 15:12
taha -
6 mai 2011 à 14:19
Bonjour,
dans le cadre de mon travail de diplome, je dois créer un programme qui permette de calculer un gap de maturité. Pour faire cela, j'ai déjà fait un code qui me fait un échéancier :
Private Sub CommandButton1_Click()
Const fdg As Double = 0.1
Dim montant As Double
Dim tau As Double
Dim tau2 As Double
Dim dur As Integer
Dim dep As Date
Dim differ As Single
Dim maf As Worksheet
Dim index As Long
Dim rbt As Currency
Dim jour As Date
Set maf = Sheets("feuil2")
maf.Range("A18:F419").ClearContents
montant = maf.Range("e2")
tau = maf.Range("f2") * 12 * 100
tau2 = maf.Range("f2")
dur = maf.Range("i2")
differ = maf.Range("k2")
rbt = (montant * (-tau2) * (1 + tau2) ^ dur) / (1 - (1 + tau2) ^ dur)
dep = maf.Range("d2")
For index = 1 To differ + dur
maf.Range("a" & index + 17) = index
jour = DateSerial(Year(dep), Month(dep) + index, Day(dep))
If Weekday(jour, 2) = 6 Then jour = jour - 1
If Weekday(jour, 2) = 7 Then jour = jour + 1
maf.Range("b" & index + 17) = Format(jour, "dddd")
maf.Range("c" & index + 17) = jour
If index <= differ Then
maf.Range("d" & index + 17) = montant * tau / 1200
maf.Range("e" & index + 17) = montant * fdg / (dur + differ)
maf.Range("f" & index + 17) = (montant * tau / 1200) + (montant * fdg / (dur + differ))
Else
maf.Range("d" & index + 17) = rbt
maf.Range("e" & index + 17) = montant * fdg / (dur + differ)
maf.Range("f" & index + 17) = rbt + (montant * fdg / (dur + differ))
End If
Next index
End Sub
et un autre qui va me prendre les valeurs dans cet échéancier et qui me les retransmet selon des conditions (qui sont des dates) dans des cellules
C4 : paiement à venir dans le mois
C5 : paiement dans 1 à 3 mois
C6 : paiement dans 3 à 6 mois
C7 : paiement dans 6 à 12 mois
C8 : paiement dans 1 à 2 années
C9 : paiement dans 2 à 3 années
voici le code que j'ai fait (enregistré en module, je ne sais pas comment le faire autrement):
Maintenant mon problème c'est que ce code marche pour un échéancier (donc une seule personne), mais il faudrait que je fasse une boucle qui me permette de faire ce même calcul sur tous les clients (en utilisant toujours le même échéancier qui serait mis à jour pour chaque client), mais là je n'ai absolument aucune idée de comment procéder.
Donc si quelqu'un aurait une idée de comment procéder je l'en remercie d'avance.
Bonjour, j'étais entrain de faire une recherche sur le même problème. J'ai une feuille Excel avec des données incluant des infos concernant la date début et de fin de quelques contrats et j'essaie de trouver une manière pour savoir les contrats qui prennent fins quelques semaines en avance pour commencer de nouvelles procédures.
Si vous pouvez me conseiller un programe ou bien une méthode a suivre ca sera très apprécié.
Merci