1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
   |  
'Macro remplissant le budget de l'année mois par mois en fonction du libellé
Sub budget()
'Paramétrage et définition des variables
Dim recueil As range
Dim maplage As range
Dim i As Variant
Dim a As Variant
Dim z As Variant
Dim r As Variant
Dim s As Variant
Dim Val As Variant
Dim Val2 As Variant
Dim vehicule As String
Dim lignemax
Set maplage = Sheets("budget").range("b12:bk200")  'Zone de remplissage
Sheets("BudgetCoûts").Activate
ActiveSheet.range("A5").Select
Selection.CurrentRegion.Select
Set recueil = Selection     'Zone de données
Sheets("budget").Activate
 
lignemax = maplage.range("A1").SpecialCells(xlCellTypeLastCell).Row
'Boucle sur zone de saisie
For i = 1 To lignemax
'recherche le nom du véhicule sur la colonne 3 de l'onglet budget
    vehicule = maplage.Cells(i, 3).Value
    If vehicule <> "" Then
    'Boucle sur zone de données recoupant avec le véhicule
    For z = 2 To recueil.Rows.Count
 
        If recueil.Cells(z, 8).Value = vehicule Then
            r = 0
            s = 0
            'Boucle délimitant le nombre de cellules à récuperer de la zone de saisie
            For a = 0 To 95
                'Raccourci des boucles
           If recueil.Cells(z, 106 + r).Value = 0 Then
                a = a + 11
                r = r + 1
                Else
                'saisie des données (valeur précédentes + nouvelles)
                Val = maplage.Cells(i, 4 + a).Value
                Val2 = recueil.Cells(z, 10 + a).Value
                maplage.Cells(i, 4 + a).Value = Val2 + Val
                s = s + 1
                If s = 12 Then
                    r = r + 1
                    s = 0
                End If
            End If
 
            Next a
        End If
    Next z
    End If
Next i
 
End Sub | 
Partager