Sub EssaiTableau()
Dim Tablo() As Variant 'Tables Comptes
Dim TabRub() As Variant 'Table rubriques
Dim TabResult() As Variant 'Table résultat
Dim NlT% 'nombre de ligne de la base Tablo
Dim NlR% 'nombre de ligne de la base TabRub
Dim lT% 'ligne en cours de Tablo
Dim lR% ' ligne en cours dans TabRub
Dim Debit As Double
Dim Somme As Double
Dim i%, c%



Feuil2.Range("E5:E46").ClearContents ' Emplacement des résultats: somme par rubrique
TabRub = Feuil2.Range("B5:B46")
NlR = UBound(TabRub, 1)
ReDim TabResult(UBound(TabRub, 1), 1)

'Balaye les 2 comptes
For c = 1 To 2
    NlT = Range("Tableau" & c).CurrentRegion.Rows.Count - 1 ' moins ligne titre
    ReDim Preserve Tablo(NlT, 7) ' besoin de 7 col sur 13
' Erreur si c=2 ,l'indice n'appartien pas à la selection
    Tablo = Range("Tableau" & c)
    Somme = 0
'Pour chaque rubrique dans TabRub
    For lR = 1 To NlR
        Somme = 0
        For lT = 1 To NlT
            If TabRub(lR, 1) = Tablo(lT, 5) Then
                If Year(Tablo(lT, 1)) = ActiveCell Then
                    Debit = Tablo(lT, 7)
                    Somme = Somme + Debit
                End If
            End If
        Next
        TabResult(lR, 1) = Somme
    Next
Next
For i = 1 To UBound(TabResult, 1)
    ActiveCell.Offset(i, 0) = TabResult(i, 1)
Next
End Sub
