Dénombrer statistique - NB HT Tableau MAX
Bonjour à tous,
J’espère que vous allez bien en ce dernier jour de l’année.
Je viens à vous car j’aimerais effectuer une macro qui effectuerai les actions suivantes.
L’objectif de la macro est d’indiquer le nombre de fois que l’on voit apparaître du contenu dans la colonne AE de la feuille « Aggregate » pour chacune des équipes.
- Dans la feuille Tableau MAX, crée une colonne en C, écrire en C1 « NB App HT »
- Pour chaque équipe présente en colonne D (de la première jusqu’à la dernière ligne) « Team », à partir de la ligne 2 de la feuille « Tableau MAX », rechercher le nombre de fois qu’il y a du contenu en dans la feuille « Aggregate » en colonne AE lorsqu’on retrouve le même nom de l’équipe dans la colonne D de la feuille « Aggregate » (de la première jusqu’à la dernière ligne)
- Après avoir compté le nombre de fois dans la feuille « Aggregate », écrire ce nombre dans la feuille « Tableau MAX » en colonne D de l’équipe associée.
Exemple :
Avec Accrington, première équipe figurant dans la feuille « Tableau MAX », on va rechercher dans « Aggregate » le nombre de fois où il y a du contenu dans la colonne « AE » lorsque dans la colonne D le mot « Accrington » est présent.
À titre d’exemple je vais utiliser un filtre en colonne D, et masquer avec un bouton certaines colonnes entre D et AE, voici ce que nous obtenons.
Nous avons ici 46 cellules en AE qui sont non vides lorsque Accrington est présent en D. Ainsi la macro doit écrire dans la feuille « Tableau MAX » en colonne D à la ligne associé à Accrington «46»
Pour l’équipe suivante « Arsenal », avec ces mêmes actions, ont doit obtenir « 76 » et la macro doit effectuer cette action pour chacune des équipes présentes en colonne D de la feuille « Tableau MAX »
Je vous remercie par avance pour votre aide. Je vous souhaite un bon réveillon du Nouvel An, et que 2021 soit une année ou chacun d’entre nous serons en croissance pour donner une meilleure version de nous-mêmes.
Par ailleurs, je profite également de cette occasion pour remercier toutes les personnes du forum qui m’ont accompagné ou qui ont essayé de le faire durant cette année 2020. Grâce à l’esprit du forum où l’entraide prime et où le partage de connaissance est « normal », j’ai pu atteindre des paliers que je ne pensais pas atteindre cette année et je compte continuer sur cette voie en 2021.
Je vous exprime à tous ma gratitude et je vous souhaite à tous une excellente année à venir et prenez soin de vous et de vos proches.
Laplacea
Je me suis trompé de fichier voici le bon !
Bon réveillon à tous.
Bonjour DjiDji59430, le forum,
Tout d'abord, je te souhaite mes meilleurs vœux pour cette année 2021.
Concernant la macro, tu lui as donné quel intitulé sur le fichier car je ne la vois pas ?
Je te remercie par avance de ton retour et je te souhaite une bonne journée.
Bien à toi.
Laplacea
Bonjour laplacea, DjiDji, le forum,
Tout d'abord , permettez-moi de vous souhaiter une très bonne année 2021, santé et bonheur !
Un essai par macro....
Sub NB_HT()
Dim derligA As Integer, derligT As Integer
Application.ScreenUpdating = False
With Sheets("Aggregate")
If .FilterMode Then .ShowAllData
derligA = .Range("C" & Rows.Count).End(xlUp).Row
End With
With Sheets("Tableau MAX")
derligT = .Range("C" & Rows.Count).End(xlUp).Row
.Cells(1, 3).Resize(, 1).EntireColumn.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
.Cells(1, 3) = "NB App HT ": .Columns(3).NumberFormat = "0": .Columns(3).Interior.ColorIndex = xlNone
.Cells(2, 3).Formula = "=COUNTIFS(Aggregate!$D$3:$D$" & derligA & ",$D2,Aggregate!$AE$3:$AE$" & derligA & ",""><"")"
.Range("C2:C" & derligT).FillDown: .Range("C2:C" & derligT).Value = .Range("C2:C" & derligT).Value
End With
End Sub
Cordialement,
Re,
Petite modif. pour que la MFC ne s'applique qu'en colonne B.....
Sub NB_App_HT()
Dim derligA As Integer, derligT As Integer
Dim couleur(3) As Integer, mfc(3) As FormatCondition, formule(3) As String
formule1 = "=$B2<150": couleur1 = 3
formule2 = "=$B2<=250": couleur2 = 46
formule3 = "=$B2>250": couleur3 = 4
Application.ScreenUpdating = False
With Sheets("Aggregate")
If .FilterMode Then .ShowAllData
derligA = .Range("C" & Rows.Count).End(xlUp).Row
End With
With Sheets("Tableau MAX")
derligT = .Range("C" & Rows.Count).End(xlUp).Row
.Cells(2, 2).FormatConditions.Delete
.Cells(1, 3).Resize(, 1).EntireColumn.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
.Cells(1, 3) = "NB App HT ": .Columns(3).NumberFormat = "0": .Columns(3).Interior.ColorIndex = xlNone
.Cells(2, 3).Formula = "=COUNTIFS(Aggregate!$D$3:$D$" & derligA & ",$D2,Aggregate!$AE$3:$AE$" & derligA & ",""><"")"
.Range("C2:C" & derligT).FillDown: .Range("C2:C" & derligT).Value = .Range("C2:C" & derligT).Value: .Range("C2:C" & derligT).Font.Bold = False
Set mfc1 = .Cells(2, 2).FormatConditions.Add(xlExpression, , formule1): mfc1.Interior.ColorIndex = couleur1: mfc1.Font.ColorIndex = 2
Set mfc2 = .Cells(2, 2).FormatConditions.Add(xlExpression, , formule2): mfc2.Interior.ColorIndex = couleur2: mfc2.Font.ColorIndex = 2
Set mfc3 = .Cells(2, 2).FormatConditions.Add(xlExpression, , formule3): mfc3.Interior.ColorIndex = couleur3: mfc3.Font.ColorIndex = 2
End With
End Sub
Cordialement,
Bonsoir Xorsankukai, DjiDji59430, le forum,
Je te souhaite également toute la réussite possible dans ce que tu entreprends Xorsankukai pour l'année 2021.
Je te remercie pour la macro ça correspond (une nouvelle fois ahah) à ce que j'espérais. Merci encore
Prends soin de toi.
Bien à toi.
Laplacea