[Vba Excel] Somme par rapport à une date

Résolu/Fermé
whoppinie
Messages postés
6
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
11 avril 2007
- 10 avril 2007 à 11:23
whoppinie
Messages postés
6
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
11 avril 2007
- 11 avril 2007 à 09:59
Bonjour,

Je voudrais établir un "tableau de bord".
J'ai une feuille par "agence", dans chaque feuille j'ai une liste de commandes passées.

Dans mon tableau final, je voudrais récupérer par mois la somme totale des commandes.

Donc faire d'abord une recherche par date dans chaque feuille, puis qu'il additionne les valeurs trouvées. Et qu'au final dans mon tableau, j'ai le montant des dépenses mensuelles par agence.

Quelqu'un a-t- il une solution ?

Merci d'avance pour votre aide !

3 réponses

je ne vois pas trop quel est le probleme, as-tu essayé via les filtres ou les sous-totaux?

Aurais-tu un fichier d'exemple pour mieux voir le pb?

Irem
0
whoppinie
Messages postés
6
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
11 avril 2007
1
10 avril 2007 à 13:43
nan les filtres ça ne marche pas (le tableau de bord est sur une autre feuille) et les sous totaux non plus puisque c'est en fonction d'une période que je veux récupérer les infos et pas d'une catégorie (je me trompe peut-être, ça peut peut etre marcher mais je ne sais pas faire dans ce cas)

Comment je peux faire pour ajouter une image (exemple de classeur) au sujet ? (par mail ? messagerie ?)
0
whoppinie
Messages postés
6
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
11 avril 2007
1
11 avril 2007 à 09:59
Bon ayé j'ai trouvé la solution. Pour ceux qui se poseraient la question voici le code vba appliqué :


Private Sub DépensesMensuelles(code_agence As String, mois As Integer, cellule As Range)
' Mise à jour des dépenses mensuelles
' Paramètres :
' code_agence : Code de l'agence correspondant au nom de la feuille Excel
' mois : Mois dont on veut calculer le total des dépenses
' cellule : Cellule où copier le total

Dim total_depenses As Double
total_depenses = 0

Dim feuille_agence As Worksheet
Set feuille_agence = Sheets(code_agence)

' 1ère date de dépense de l'agence
Dim date_depense As Range
Set date_depense = feuille_agence.Range("A9")

Do While date_depense <> ""
Dim depense As Date

depense = date_depense.Value
' Vérification que le mois correspond
If Month(depense) = mois And Year(depense) = 2007 Then
' Si un montant est présent => Ajout au total des dépenses
If date_depense.Offset(0, 7).Value <> "" Then
total_depenses = total_depenses + date_depense.Offset(0, 7).Value
End If
End If
Set date_depense = date_depense.Offset(1, 0)
Loop
' Copie du total dans la cellule passée en paramètre
cellule.Value = total_depenses
End Sub

Private Sub MajDepenseagence(code_atm As String, cellule_depart As Range)
'
DépensesMensuelles code_agence, 1, cellule_depart
DépensesMensuelles code_agence, 2, cellule_depart.Offset(0, 1)
DépensesMensuelles code_agence, 3, cellule_depart.Offset(0, 2)
DépensesMensuelles code_agence, 4, cellule_depart.Offset(0, 3)
DépensesMensuelles code_agence, 5, cellule_depart.Offset(0, 4)
DépensesMensuelles code_agence, 6, cellule_depart.Offset(0, 5)
DépensesMensuelles code_agence, 7, cellule_depart.Offset(0, 6)
DépensesMensuelles code_agence, 8, cellule_depart.Offset(0, 7)
DépensesMensuelles code_agence, 9, cellule_depart.Offset(0, 8)
DépensesMensuelles code_agence, 10, cellule_depart.Offset(0, 19)
DépensesMensuelles code_agence, 11, cellule_depart.Offset(0, 10)
DépensesMensuelles code_agence, 12, cellule_depart.Offset(0, 11)

End Sub


Private Sub BtnMaJRecap_Click()
' Mise à jour de chaque agence
MajDepenseagence "77", Range("B26")
MajDepenseagence "78", Range("B27")
MajDepenseagence "91", Range("B28")


End Sub
0