Bonjour à tous,
Voici de quoi faire chauffer un peu vos méninges par ce temps hivernal.
Je voudrais calculer via un sommeprod l’ensemble des données de plusieurs feuilles d’un même classeur. C’est donné étant les absences remplies dans un calendrier.
Le nombre de feuille est variable puisque je dois ajouter une nouvelle feuille tous les 6 mois.
Selon moi, deux boucles imbriquées semble être la solution par contre je pense que je rencontre un problème sur la syntaxe du sumproduct si cher à mon cœur.
Voici un extrait du code :
Merci
Voici de quoi faire chauffer un peu vos méninges par ce temps hivernal.
Je voudrais calculer via un sommeprod l’ensemble des données de plusieurs feuilles d’un même classeur. C’est donné étant les absences remplies dans un calendrier.
Le nombre de feuille est variable puisque je dois ajouter une nouvelle feuille tous les 6 mois.
Selon moi, deux boucles imbriquées semble être la solution par contre je pense que je rencontre un problème sur la syntaxe du sumproduct si cher à mon cœur.
Voici un extrait du code :
Code:
'Je définis un plage de Nom
Set Plage = Range("E11:E20")
For Each Cellule In Plage
'Je vide ma variable AValider
AValider = 0
'Je boucle sur les feuilles répondant à 2 critères
For Each Sh In Worksheets
If Sh.Name Like Target & "|*" And Cellule.Offset(0, -1) <> "" Then
'Je définis mes plages
'Mois
Set Plage1 = Worksheets(Sh.Name).Range("$F$12:$GG$12")
'Nom
Set Plage2 = Worksheets(Sh.Name).Range("$D$20:$D$40")
'Les données des absences > [ALL],[AM],[PM]
Set Plage3 = Worksheets(Sh.Name).Range("$F$20:$GG$40")
'SommeProd - essai seulement avec [ALL]
AValider = Evaluate("sumproduct((" & Plage1 & " = " & """ & Cellule & """) * (" & Plage2 & " = " & """ & Cellule.Offset(0, -1) & """) * (" & Plag3 & "=" & """[ALL])""" & ") * 1)")
'Je remplis ma cellule avec le résultat
Cellule.Offset(0, 2).Value = AValider
End If
Next Sh
Next Cellule
Set Plage = Nothing
Merci