Bonjour,
J'ai un soucis sur la macro que je viens d'essayer de faire
Mon resultat calcul un loyer d'une année sur l'autre suivant les donnée de l'onglet loyer
Mais j'aimerais recuperer la cellule de gauche de mon resultat qui viendrai remplacer mon resultat si la colonne F=triennal"
De plus j'ai une colonne hausse et baisse
Si la variation entre mon resultat de (2009-2008)/2008 est inferieur baisse et superieur à hausse alors resultat 2008*(1+hausse ou baisse)
sachant que hausse ou baisse peut etre vide
Desolé car j'ai du mal à m'exprimer?
Mona
Ci-joint mon code vba
Sub test()
For L = 2 To 50
For c = 15 To 116
base = Sheets("suivi").Cells(L, 9)
NN = Sheets("suivi").Cells(L, 10)
P = Sheets("loyer").Cells(1, c)
revision = Sheets("suivi").Cells(L, 6)
debut = Sheets("suivi").Cells(L, 3)
fin = Sheets("suivi").Cells(L, 4)
Baisse = Sheets("suivi").Cells(L, 13)
Hausse = Sheets("suivi").Cells(L, 14)
If Year(debut) > P Or Year(fin) < P Then
montant = 0
Else
If Year(debut) = P Then
montant = Sheets("suivi").Cells(L, 5)
Else
If revision = "triennal" And NN = "N-1" Then
montant = Sheets("suivi").Cells(L, c - 3) / Sheets("loyer").Cells(L, c - 4) * Sheets("loyer").Cells(L, c - 1)
Else
If revision = "triennal" And NN = "N" Then
montant = Sheets("suivi").Cells(L, c - 3) / Sheets("loyer").Cells(L, c - 3) * Sheets("loyer").Cells(L, c)
Else
If NN = "N-1" And revision = "annuel" Then
montant = Sheets("suivi").Cells(L, c - 1) / Sheets("loyer").Cells(L, c - 2) * Sheets("loyer").Cells(L, c - 1)
Else
montant = Sheets("suivi").Cells(L, c - 1) / Sheets("loyer").Cells(L, c - 1) * Sheets("loyer").Cells(L, c)
End If
End If
End If
End If
End If
Sheets("suivi").Cells(L, c).FormulaLocal = montant
Next c
Next L
End Sub
J'ai un soucis sur la macro que je viens d'essayer de faire
Mon resultat calcul un loyer d'une année sur l'autre suivant les donnée de l'onglet loyer
Mais j'aimerais recuperer la cellule de gauche de mon resultat qui viendrai remplacer mon resultat si la colonne F=triennal"
De plus j'ai une colonne hausse et baisse
Si la variation entre mon resultat de (2009-2008)/2008 est inferieur baisse et superieur à hausse alors resultat 2008*(1+hausse ou baisse)
sachant que hausse ou baisse peut etre vide
Desolé car j'ai du mal à m'exprimer?
Mona
Ci-joint mon code vba
Sub test()
For L = 2 To 50
For c = 15 To 116
base = Sheets("suivi").Cells(L, 9)
NN = Sheets("suivi").Cells(L, 10)
P = Sheets("loyer").Cells(1, c)
revision = Sheets("suivi").Cells(L, 6)
debut = Sheets("suivi").Cells(L, 3)
fin = Sheets("suivi").Cells(L, 4)
Baisse = Sheets("suivi").Cells(L, 13)
Hausse = Sheets("suivi").Cells(L, 14)
If Year(debut) > P Or Year(fin) < P Then
montant = 0
Else
If Year(debut) = P Then
montant = Sheets("suivi").Cells(L, 5)
Else
If revision = "triennal" And NN = "N-1" Then
montant = Sheets("suivi").Cells(L, c - 3) / Sheets("loyer").Cells(L, c - 4) * Sheets("loyer").Cells(L, c - 1)
Else
If revision = "triennal" And NN = "N" Then
montant = Sheets("suivi").Cells(L, c - 3) / Sheets("loyer").Cells(L, c - 3) * Sheets("loyer").Cells(L, c)
Else
If NN = "N-1" And revision = "annuel" Then
montant = Sheets("suivi").Cells(L, c - 1) / Sheets("loyer").Cells(L, c - 2) * Sheets("loyer").Cells(L, c - 1)
Else
montant = Sheets("suivi").Cells(L, c - 1) / Sheets("loyer").Cells(L, c - 1) * Sheets("loyer").Cells(L, c)
End If
End If
End If
End If
End If
Sheets("suivi").Cells(L, c).FormulaLocal = montant
Next c
Next L
End Sub
Dernière édition: