Bonjour j'ai posté tout à l'heure sur le forum un problème similaire mais cette fois il y a une complexité supplémentaire. en fait il ya un cumul à faire au fil des mois:

si on est en janvier on a : C10

février: C10+ D10
MARS: C10+ D10+E10
etc.

en fait; je fait la somme au cumul au fur à mesure qu'on avance en mois alors en m'inspirant du code précédent ça donne ceci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Sub cumul_mois()
 
Dim TabMois() As Variant
 
TabMois = Array("Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre")
 
 
 
If Range("C3").Value = "2014" Then
 
    For i = LBound(TabMois) To UBound(TabMois)
 
        If Range("C2") = TabMois(i) Then
 
            Range("D10").Formula = Sheets("COUT").Cells(10, i + 3) + " c'est là ou le bas blesse: pour janvier retenir que janvier pour les mois suivant ajouter D10; E10; F10 sur la même feuille "
 
        End If
 
    Next i
 
End If
end sub
en fait je cherche à réécrire le code suivant trop long et fastidieux :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
sub cumul
 
Sheets("SYNTHESE").Select
 
If Range("C2").Value = "Janvier" And Range("C3").Value = "2014" Then Range("D10").Formula = Sheets("COUT").Range("C10")
If Range("C2").Value = "Février" And Range("C3").Value = "2014" Then Range("D10").Formula = Sheets("COUT").Range("C10") + Sheets("COUT").Range("D10")'If Range("C2").Value = "Mars" And Range("C3").Value = "2014" Then Range("D10").Formula = Sheets("COUT").Range("C10") + Sheets("COUT").Range("D10") + Sheets("COUT").Range("E10")
If Range("C2").Value = "Avril" And Range("C3").Value = "2014" Then Range("D10").Formula = Sheets("COUT").Range("C10") + Sheets("COUT").Range("D10") + Sheets("COUT").Range("E10") + Sheets("COUT").Range("F10")
If Range("C2").Value = "Mai" And Range("C3").Value = "2014" Then Range("D10").Formula = Sheets("COUT").Range("C10") + Sheets("COUT").Range("D10") + Sheets("COUT").Range("E10") + Sheets("COUT").Range("F10") + Sheets("COUT").Range("G10")
If Range("C2").Value = "Juin" And Range("C3").Value = "2014" Then Range("D10").Formula = Sheets("COUT").Range("C10") + Sheets("COUT").Range("D10") + Sheets("COUT").Range("E10") + Sheets("COUT").Range("F10") + Sheets("COUT").Range("G10") + Sheets("COUT").Range("H10")
If Range("C2").Value = "Juillet" And Range("C3").Value = "2014" Then Range("D10").Formula = Sheets("COUT").Range("C10") + Sheets("COUT").Range("D10") + Sheets("COUT").Range("E10") + Sheets("COUT").Range("F10") + Sheets("COUT").Range("G10") + Sheets("COUT").Range("H10") + Sheets("COUT").Range("I10")
If Range("C2").Value = "Août" And Range("C3").Value = "2014" Then Range("D10").Formula = Sheets("COUT").Range("C10") + Sheets("COUT").Range("D10") + Sheets("COUT").Range("E10") + Sheets("COUT").Range("F10") + Sheets("COUT").Range("G10") + Sheets("COUT").Range("H10") + Sheets("COUT").Range("I10") + Sheets("COUT").Range("J10")
If Range("C2").Value = "Septembre" And Range("C3").Value = "2014" Then Range("D10").Formula = Sheets("COUT").Range("C10") + Sheets("COUT").Range("D10") + Sheets("COUT").Range("E10") + Sheets("COUT").Range("F10") + Sheets("COUT").Range("G10") + Sheets("COUT").Range("H10") + Sheets("COUT").Range("I10") + Sheets("COUT").Range("J10") + Sheets("COUT").Range("K10")
If Range("C2").Value = "Octobre" And Range("C3").Value = "2014" Then Range("D10").Formula = Sheets("COUT").Range("C10") + Sheets("COUT").Range("D10") + Sheets("COUT").Range("E10") + Sheets("COUT").Range("F10") + Sheets("COUT").Range("G10") + Sheets("COUT").Range("H10") + Sheets("COUT").Range("I10") + Sheets("COUT").Range("J10") + Sheets("COUT").Range("K10") + Sheets("COUT").Range("L10")
If Range("C2").Value = "Novembre" And Range("C3").Value = "2014" Then Range("D10").Formula = Sheets("COUT").Range("C10") + Sheets("COUT").Range("D10") + Sheets("COUT").Range("E10") + Sheets("COUT").Range("F10") + Sheets("COUT").Range("G10") + Sheets("COUT").Range("H10") + Sheets("COUT").Range("I10") + Sheets("COUT").Range("J10") + Sheets("COUT").Range("K10") + Sheets("COUT").Range("L10") + Sheets("COUT").Range("M10")
If Range("C2").Value = "Décembre" And Range("C3").Value = "2014" Then Range("D10").Formula = Sheets("COUT").Range("C10") + Sheets("COUT").Range("D10") + Sheets("COUT").Range("E10") + Sheets("COUT").Range("F10") + Sheets("COUT").Range("G10") + Sheets("COUT").Range("H10") + Sheets("COUT").Range("I10") + Sheets("COUT").Range("J10") + Sheets("COUT").Range("K10") + Sheets("COUT").Range("L10") + Sheets("COUT").Range("M10") + Sheets("COUT").Range("N10")