Public Sub SommeMois()
Dim ws As Worksheet, m As Byte, mois As Byte, somme As Double, somme1 As Double, somme2 As Double
If IsDate(Range("'Base de Données'!Q26")) Then
mois = Month(Range("'Base de Données'!Q26"))
For Each ws In Worksheets
If IsDate(ws.Name) Then
m = Month(CDate(ws.Name))
If m = mois Then
somme = somme + Application.SumIf(ws.Range("N5:N27"), Range("'Base de Données'!M29"), ws.Range("O5:O27"))
somme1 = somme1 + Application.SumIf(ws.Range("N5:N27"), Range("'Base de Données'!M32"), ws.Range("O5:O27"))
somme2 = somme2 + Application.SumIf(ws.Range("N5:N27"), Range("'Base de Données'!M35"), ws.Range("O5:O27"))
End If
End If
Next
Range("'Base de Données'!N31") = somme
Range("'Base de Données'!N34") = somme1
Range("'Base de Données'!N37") = somme2
End If
End Sub