Accéder au contenu principal

Comment compter le nombre d'occurrences par année/trimestre/mois/semaine dans Excel ?

Author: Kelly Last Modified: 2025-07-21

Dans le travail quotidien, l'analyse de données nécessite souvent de résumer le nombre d'enregistrements ou d'événements par périodes de temps, comme compter combien de ventes ont eu lieu chaque mois, suivre la fréquence des activités par semaine, ou analyser les tendances saisonnières par trimestre. Bien que la fonction NB.SI soit couramment utilisée pour compter des données selon des critères spécifiques dans Excel, il peut ne pas toujours être évident de regrouper et compter des dates directement par année, mois, trimestre ou semaine. Pour répondre à ces défis, cet article présente plusieurs méthodes pratiques et faciles à appliquer pour compter les occurrences par diverses périodes (année, trimestre, mois, semaine, jour de la semaine) dans Excel, vous aidant à résumer et analyser efficacement les données temporelles tout en évitant les erreurs de comptage manuel.


Compter le nombre d'occurrences par année/mois avec des formules

Lorsque vous avez besoin de savoir rapidement combien de fois un certain événement s'est produit dans une année ou un mois particulier, les formules offrent une approche flexible et dynamique. En utilisant des fonctions de date intégrées avec SOMMEPROD, vous pouvez calculer directement les comptes par année, mois, ou toute combinaison de ceux-ci, rendant votre résumé précis et automatiquement mis à jour lorsque les données sources changent. Cette méthode fonctionne bien pour la plupart des tâches d'analyse routinières sur des ensembles de données de petite à moyenne taille.

Sélectionnez une cellule vide où vous souhaitez afficher le résultat du décompte, puis entrez la formule suivante :

=SOMMEPROD((MOIS($A$2:$A$24)=F2)*(ANNEE($A$2:$A$24)=$E$2))

Après avoir entré la formule, faites glisser la poignée de recopie automatique de la cellule vers le bas pour appliquer la formule aux autres lignes si nécessaire. Comme illustré ci-dessous :
apply a formual to count the number of occurrences per year and month

Remarques et conseils :

  • Dans la formule MOIS($A$2:$A$24)=F2 et ANNEE($A$2:$A$24)=$E$2 sont des critères qui correspondent au mois spécifié dans F2 et à l'année dans E2. Mettez à jour les plages et références (telles que A2:A24, E2, F2) pour qu'elles conviennent à la disposition de vos données.
  • Pour un décompte uniquement par mois, en ignorant l'année, utilisez :
    =SOMMEPROD(1*(MOIS($A$2:$A$24)=F2))
  • Assurez-vous que la colonne de date contient des valeurs de date Excel réelles, et non des dates formatées en texte afin d'éviter des erreurs ou des incohérences. Si votre formule renvoie des résultats inattendus, vérifiez à nouveau le formatage des dates.
  • Si votre ensemble de données est volumineux, envisagez d'utiliser des tableaux croisés dynamiques ou VBA pour des performances accrues et une maintenance plus facile.

Cette méthode convient à la plupart des scénarios nécessitant des statistiques rapides sur les dates et lorsque vous souhaitez que les résultats se mettent à jour automatiquement après des modifications de données. Cependant, travailler avec plusieurs conditions de regroupement peut rendre les formules complexes et difficiles à maintenir.


Compter le nombre d'occurrences par année/mois/jour de la semaine/jour avec Kutools pour Excel

Si vous avez installé Kutools pour Excel, vous pouvez tirer parti de ses utilitaires intuitifs pour regrouper et compter le nombre d'occurrences par année, mois, jour de la semaine, jour, ou des combinaisons supplémentaires comme année & mois ou mois & jour, sans avoir besoin de construire des formules complexes. Cette approche est particulièrement efficace pour les utilisateurs recherchant une solution visuelle et pilotée par menu.

Kutools pour Excel propose plus de 300 fonctionnalités avancées pour simplifier les tâches complexes, augmentant ainsi la créativité et l'efficacité. Intégré à des capacités d'IA, Kutools automatise les tâches avec précision, rendant la gestion des données facile et sans effort. Informations détaillées sur Kutools pour Excel...  Essai gratuit...

1. Sélectionnez la colonne contenant vos dates, puis cliquez sur Kutools > Format > Appliquer le format de date. La boîte de dialogue suivante apparaîtra :
go to the Apply Date Formatting dialog and set the options

2. Dans la boîte de dialogue Appliquer le format de date, choisissez le style de format correspondant à votre besoin de comptage (par exemple, mois, année, jour de la semaine, jour, etc.), puis cliquez sur OK. Par exemple, sélectionnez "Mar" pour compter par mois.

3. Tandis que la colonne de date est toujours sélectionnée, cliquez sur Kutools > En réel. Cette étape convertit toutes les dates en valeurs affichées (par exemple, noms de mois) pour faciliter le regroupement lors des étapes ultérieures.
clcik To Actual to convert dates to the month names

4. Ensuite, sélectionnez la plage contenant vos noms de groupes convertis et les données associées (telles que les colonnes Montant ou Catégorie). Allez dans Kutools > Texte > Combinaison avancée des lignes. Vous verrez l'interface suivante :
go to the Advanced Combine Rows feature and set options

5. Dans la boîte de dialogue Combinaison avancée des lignes :
(1) Définissez votre colonne de date comme Clé principale pour effectuer un regroupement.
(2) Pour la colonne que vous souhaitez compter (par exemple, Montant), définissez le calcul sur Décompte.
(3) Vous pouvez choisir d'autres méthodes d'agrégation ou de combinaison pour d'autres colonnes (par exemple, combinez les noms de fruits avec une virgule).
(4) Cliquez sur OK pour traiter.

Vos données afficheront désormais le nombre d'enregistrements par période sélectionnée. Consultez la capture d'écran ci-dessous :
the number of occurrences per month is counted

Kutools pour Excel - Boostez Excel avec plus de 300 outils essentiels. Profitez de fonctionnalités IA gratuites en permanence ! Obtenez-le maintenant

Comparé aux formules manuelles, Kutools simplifie le processus, réduit les erreurs humaines et convient parfaitement aux utilisateurs qui effectuent fréquemment des comptages groupés et souhaitent éviter la complexité des formules. Il fonctionne bien aussi bien pour les petits que pour les grands ensembles de données. N'oubliez pas de sauvegarder vos données avant de convertir ou combiner des lignes en masse.

Compter le nombre d'occurrences par année/mois/trimestre/heure avec un tableau croisé dynamique

Les tableaux croisés dynamiques offrent une méthode puissante et interactive pour analyser de grands ensembles de données et résumer les occurrences par une ou plusieurs dimensions temporelles — année, mois, trimestre, heure, etc. — avec une interface simple basée sur clics. Les tableaux croisés dynamiques permettent également une reconfiguration et un filtrage rapides, ce qui les rend idéaux pour explorer les schémas de données ou préparer des rapports de gestion.

1. Sélectionnez votre tableau de données, puis allez dans Insérer > Tableau croisé dynamique. La boîte de dialogue Créer un tableau croisé dynamique apparaît.
screenshot of clicking Insert > PivotTable

2. Dans la boîte de dialogue, spécifiez où placer le tableau croisé dynamique (nouvelle feuille de calcul ou emplacement existant tel que cellule E1), puis cliquez sur OK.
set options in the Create PivotTable dialog box

3. Dans le volet Champs du tableau croisé dynamique, faites glisser le Date dans la section Lignes et le champ Montant (ou champ cible) dans la section Valeurs. Par défaut, les valeurs peuvent être additionnées.

Le tableau croisé dynamique apparaît comme dans la capture d'écran ci-dessous :
drag the column names to the corresponding fields

4. Changez le calcul des valeurs pour un décompte en faisant un clic droit sur le titre de la colonne de valeurs (par exemple, Somme de Montant), puis en choisissant Résumer les valeurs par > Décompte.
select Summarize Values By > Count from the right-clicking menu

5. Pour regrouper par périodes supplémentaires (telles que mois, année ou trimestre), faites un clic droit sur n'importe quelle cellule dans la colonne Étiquettes de ligne, sélectionnez Grouper, et dans la boîte de dialogue, choisissez les critères de regroupement (tels que Mois, Années ou Trimestres), puis cliquez sur OK.
select Group from the right-clicking menu and choose month and year

Votre tableau affiche maintenant les comptes par période(s) sélectionnée(s) :
the number of occurrences per year and month is counted

Note : Le regroupement par plusieurs périodes (par exemple, mois et année) ajoutera des niveaux supplémentaires dans les Étiquettes de ligne. Vous pouvez réorganiser les champs de regroupement (par exemple, déplacer Années en dessous de Date) dans le volet Champs du tableau croisé dynamique pour ajuster votre vue résumée.
The count of monthly records is calculated by grouping them by month and year.

Cette approche est idéale pour les grands ensembles de données dynamiques nécessitant un regroupement, une comparaison et un résumé périodiques. Elle convient moins bien pour des calculs ad-hoc au niveau des cellules ou pour les utilisateurs peu familiers avec les fonctionnalités des tableaux croisés dynamiques.


Macro VBA : Compter les occurrences par année/trimestre/mois/semaine avec un résumé automatisé

Lorsque vous devez générer à plusieurs reprises des résumés d'occurrences regroupées par différentes périodes temporelles, ou souhaitez automatiser le processus de comptage pour plus d'efficacité — notamment dans de grands ensembles de données — une macro VBA personnalisée peut être une solution efficace. Cette méthode convient particulièrement si vous traitez régulièrement des données, produisez des tableaux de synthèse périodiques, ou avez besoin de regroupements personnalisés (tels que trimestres fiscaux ou semaines) difficiles à gérer avec des formules ou des tableaux croisés dynamiques.

Étapes complètes de l'opération :

  • Sauvegardez votre classeur avant d'exécuter une macro pour la première fois.
  • Cliquez sur Développeur > Visual Basic pour ouvrir l'éditeur VBA.
  • Cliquez sur Insérer > Module, puis copiez-collez le code ci-dessous dans la fenêtre Module.
Sub CountOccurrencesByPeriod()
    Dim lastRow As Long
    Dim ws As Worksheet, summaryWs As Worksheet
    Dim periodType As String
    Dim dict As Object, key As Variant
    Dim dateRange As Range, cell As Range
    Dim outputRow As Long
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set ws = Application.ActiveSheet
    Set dateRange = Application.InputBox("Select date range:", xTitleId, Selection.Address, Type:=8)
    
    periodType = Application.InputBox("Count by (Year/Quarter/Month/Week):", xTitleId, "Month", Type:=2)
    
    If dateRange Is Nothing Or periodType = "" Then Exit Sub
    
    Set dict = CreateObject("Scripting.Dictionary")
    
    For Each cell In dateRange
        If IsDate(cell.Value) Then
            Select Case LCase(periodType)
                Case "year"
                    key = Year(cell.Value)
                Case "quarter"
                    key = "Q" & WorksheetFunction.RoundUp(Month(cell.Value) / 3, 0) & " " & Year(cell.Value)
                Case "month"
                    key = Format(cell.Value, "yyyy-mm")
                Case "week"
                    key = "W" & WorksheetFunction.WeekNum(cell.Value) & " " & Year(cell.Value)
                Case Else
                    key = Format(cell.Value, "yyyy-mm")
            End Select
            
            If dict.Exists(key) Then
                dict(key) = dict(key) + 1
            Else
                dict.Add key, 1
            End If
        End If
    Next cell
    
    Set summaryWs = Worksheets.Add(After:=ws)
    summaryWs.Name = "Occurrence_Summary"
    
    summaryWs.Range("A1").Value = "Period"
    summaryWs.Range("B1").Value = "Occurrences"
    
    outputRow = 2
    For Each key In dict.Keys
        summaryWs.Cells(outputRow, 1).Value = key
        summaryWs.Cells(outputRow, 2).Value = dict(key)
        outputRow = outputRow + 1
    Next key
    
    MsgBox "Summary completed in sheet 'Occurrence_Summary'.", vbInformation
End Sub

Après avoir entré le code :

  • Retournez dans Excel et appuyez sur Alt+F8, sélectionnez CountOccurrencesByPeriod, puis cliquez sur Exécuter.
  • Un message vous demandera de sélectionner la plage de dates à analyser. Sélectionnez la colonne ou la plage correspondante contenant vos dates.
  • Un deuxième message vous demandera par quelle période regrouper : entrez "Année", "Trimestre", "Mois", ou "Semaine" (insensible à la casse).
  • La macro générera une nouvelle feuille de calcul appelée Occurrence_Summary listant chaque période et le nombre d'occurrences qu'elle contient.

Dépannage et conseils :

  • Si vous rencontrez un avertissement de sécurité macro, ajustez les paramètres de macro dans Fichier > Options > Centre de gestion de la confidentialité > Paramètres des macros.
  • Assurez-vous que votre colonne de date contient des valeurs de date Excel valides ; des chaînes de texte ou des formats mixtes peuvent produire des comptes inexacts ou des erreurs.
  • La macro est flexible — entrez "Trimestre" pour regrouper rapidement les comptes par année et trimestre, ou "Semaine" pour résumer sur une base hebdomadaire.
  • Si vous souhaitez personnaliser la sortie (par exemple, ajouter plus de détails), vous pouvez modifier la macro pour traiter des colonnes supplémentaires ou des règles de calcul.

Cette solution est robuste pour les rapports en lots ou les analyses périodiques mais suppose une familiarité de base avec VBA et une gestion correcte des classeurs. Si vous voulez combiner une visualisation résumée, envisagez d'utiliser à la fois des tableaux croisés dynamiques et VBA.


Compter le nombre d'occurrences par semaine avec une formule NO.SEMAINE

Compter la fréquence des entrées ou événements par semaine est une exigence courante dans le suivi des ventes, la gestion de projet et l'allocation des ressources. Excel fournit la fonction NO.SEMAINE, qui renvoie le numéro de semaine d'une date donnée dans une année, facilitant ainsi le regroupement des données sur une base hebdomadaire à l'aide de formules.

Scénario applicable : Vous disposez d'une liste de dates (par exemple, données de vente ou de présence) et souhaitez compter combien d'entrées tombent dans chaque semaine de l'année. Cette méthode fonctionne bien pour les analyses en cours et lorsque vos données changent fréquemment, car le compte se met à jour automatiquement.

1. Dans une colonne vide (par exemple B2), entrez la formule suivante pour calculer le numéro de semaine pour chaque date dans la colonne A :

=WEEKNUM(A2,1)

Le deuxième argument ("1") indique que les semaines commencent le dimanche (changez-le en "2" si vous souhaitez que les semaines commencent le lundi). Copiez cette formule pour toutes les lignes de vos données de date.

2. Créez une liste des numéros de semaine que vous souhaitez résumer (par exemple, 1, 2, 3, …). Dans une autre cellule vide (disons D2), utilisez la formule suivante pour compter les occurrences pour un numéro de semaine spécifique (en supposant que B2:B24 liste les numéros de semaine et D2 contient le numéro de semaine à rechercher) :

=COUNTIF($B$2:$B$24, D2)

Après avoir appuyé sur Entrée, faites glisser cette formule vers le bas pour votre liste de numéros de semaine. Chaque résultat montre le nombre d'occurrences pour cette semaine.

Conseils et précautions :

  • Si vous souhaitez compter à la fois par année et par semaine, pour distinguer les entrées sur plusieurs années, utilisez :
    =SUMPRODUCT((YEAR($A$2:$A$24)=$F$2)*(WEEKNUM($A$2:$A$24,1)=G2))
    Où F2 est l'année cible et G2 est le numéro de semaine cible. Ajustez les plages de colonnes et les références selon vos besoins.
  • La numérotation des semaines par la fonction NO.SEMAINE peut varier en fonction du paramètre (système, États-Unis/ISO, jour de début choisi).
  • Si vous utilisez les numéros de semaine ISO (norme européenne, semaines commençant le lundi et première semaine incluant le premier jeudi), utilisez =NO.ISOSEMAINE(A2) (pour Excel 2013 et versions ultérieures).
  • Assurez-vous toujours que toutes vos valeurs de date sont au format de date Excel valide pour des résultats précis.

Cette méthode est flexible pour les tableaux de données dynamiques et peut être adaptée pour des tableaux de bord, des résumés périodiques, et lorsque vous souhaitez tabuler les comptes par semaine sans utiliser de tableaux croisés dynamiques ou d'add-ins supplémentaires.


Démo : Compter le nombre d'occurrences par année/mois/jour de la semaine/jour

 

Articles connexes :

Meilleurs outils de productivité pour Office

🤖 Kutools AI Aide : Révolutionner l'analyse des données basée sur : Exécution intelligente   |  Générer du code  |  Créer des formules personnalisées  |  Analyser les données et générer des graphiques  |  Invoquer les Fonctions améliorées
Fonctionnalités populaires : Trouver, mise en évidence ou marquer les doublons   |  Supprimer les lignes vides   |  Consolider les colonnes ou les cellules sans perdre de données   |   Arrondir sans formule ...
Super RECHERCHEV : RECHERCHEV avec critères multiples    RECHERCHEV avec valeurs multiples  |   Recherche multi-feuilles   |   Correspondance floue ....
Liste déroulante avancée : Créer rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante multi-sélection ....
Gestionnaire de colonnes : Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages & colonnes ...
Fonctionnalités en vedette : Mise au point de la grille   |  Affichage de conception   |   Barre de formule améliorée    Gestionnaire de classeur & feuille de calcul   |  Bibliothèque dAutoTexte (Auto Text)   |  Sélecteur de date   |  Fusionner les données   |  Crypter/Déchiffrer les cellules    Envoyer un e-mail par liste   |  Super Filtre   |   Filtre spécial (filtrer les cellules avec une police en gras/italique/barré...) ...
Top15 ensembles d'outils12 outils de texte (Ajouter du texte, Supprimer des caractères spécifiques, ...)   |   50+ types de graphiques (Diagramme de Gantt, ...)   |   40+ formules pratiques (Calculer lâge en fonction de la date de naissance, ...)   |   19 outils d'insertion (Insérer un code QR, Insérer une image depuis le chemin, ...)   |  12 outils de conversion (Convertir en mots, Conversion de devises, ...)   |  7 outils de fusion & division (Fusion avancée des lignes, Diviser les cellules, ...)   |   ... et plus

Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...


Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail

  • Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de50 %, et réduit des centaines de clics de souris pour vous chaque jour !