Accéder au contenu principal

Kutools for Office — Une Suite. Cinq Outils. Accomplissez Plus.

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

Author Kelly Last modified

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, 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 en fonction de critères spécifiques dans Excel, elle peut ne pas toujours être simple à utiliser lorsque vous souhaitez regrouper et compter des dates directement par année, mois, trimestre ou semaine. Pour relever ces défis, cet article présente plusieurs méthodes pratiques et faciles à appliquer pour compter les occurrences par différentes 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 au cours d'une année ou d'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 approche fonctionne bien dans la plupart des tâches d'analyse courantes pour des jeux 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 correspondent à 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 pour éviter des erreurs ou des incohérences. Si votre formule renvoie des résultats inattendus, vérifiez à nouveau le formatage des dates.
  • Si votre jeu 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 lors de modifications des 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 encore des combinaisons 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 qui contient 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 un comptage par mois.

3. Tandis que la colonne des dates 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 dans les é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 > Fusion 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 Fusion avancée des lignes :
(1) Définissez votre colonne de date comme la Clé primaire pour la regrouper.
(2) Pour la colonne que vous souhaitez compter (par exemple, Montant), définissez le calcul à 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 décompte des enregistrements par période sélectionnée. Voir 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 effectuant fréquemment des comptages groupés et souhaitant é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 manière puissante et interactive d'analyser de grands ensembles de données et de résumer les occurrences par une ou plusieurs dimensions temporelles — année, mois, trimestre, heure, etc. — avec une interface facile à utiliser par pointeur et clic. 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 table 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 la 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 champ Date vers la section Lignes et le champ Montant (ou champ cible) vers 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. Modifiez le calcul des valeurs en un décompte en faisant un clic droit sur le titre de la colonne de valeurs (par exemple, Somme de Montant), puis choisissez 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 (comme 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 (comme 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 décomptes par la ou les périodes sélectionnées :
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 sous 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 pour des calculs rapides 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 régulièrement des résumés d'occurrences regroupées par diverses périodes temporelles, ou souhaitez automatiser le processus de comptage pour plus d'efficacité — surtout dans de grands ensembles de données — une macro VBA personnalisée peut être une solution efficace. Cette méthode est hautement adaptée si vous traitez des données régulièrement, produisez des tableaux de synthèse périodiques, ou nécessitez des regroupements personnalisés (tels que des trimestres fiscaux ou des semaines) difficilement réalisables avec des formules ou des tableaux croisés dynamiques.

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

  • Effectuez une sauvegarde de 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 et 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 pertinente contenant vos dates.
  • Un deuxième message vous demande par quelle période regrouper : saisissez "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 décompte des occurrences dans celle-ci.

Résolution des problèmes et conseils :

  • Si vous rencontrez un avertissement de sécurité concernant les macros, ajustez les paramètres des macros dans Fichier > Options > Centre de confiance > 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 — saisissez "Trimestre" pour regrouper rapidement les comptes par année et trimestre, ou "Semaine" pour obtenir un résumé 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 série ou les analyses périodiques, mais suppose une connaissance de base de VBA et une bonne gestion de classeur. Si vous souhaitez combiner la visualisation du résumé, envisagez d'utiliser à la fois les 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 présence) et souhaitez compter combien d'entrées tombent dans chaque semaine de l'année. Cette méthode fonctionne bien pour une analyse continue 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 en "2" si vous voulez que les semaines commencent le lundi). Copiez cette formule vers le bas pour toutes les lignes de vos données de date.

2. Faites 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 la 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 décompte des occurrences pour cette semaine.

Conseils et précautions :

  • Si vous souhaitez compter par année et semaine, pour distinguer les entrées à travers différentes 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 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, US/ISO, jour de début choisi).
  • Si vous utilisez des numéros de semaine ISO (norme européenne, semaines commençant le lundi et première semaine incluant le premier jeudi), utilisez =NO.SEMAINE.ISO(A2) (pour Excel 2013 et versions ultérieures).
  • Assurez-vous toujours que toutes vos valeurs de date sont au format 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 les tableaux de bord, les résumés périodiques, et lorsque vous souhaitez tabuler les comptes par semaine sans utiliser de tableaux croisés dynamiques ou de modules complémentaires 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évolutionnez l'analyse de données avec : Exécution intelligente | Générer du code | Créer des formules personnalisées | Analyser des données et générer des graphiques | Appeler les Fonctions améliorées de Kutools
Fonctionnalités populaires : Trouver, mettre en évidence ou marquer les doublons | Supprimer les lignes vides | Combinez les colonnes ou les cellules sans perte de données | Arrondir sans formule...
Super RECHERCHEV : Recherche multi-critères | Recherche multi-valeurs | 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 à sélection multiple...
Gestionnaire de colonnes : Ajouter un nombre spécifique de Colonnes | Déplacer des Colonnes | Alterner l’état de visibilité des Colonnes masquées | Comparer des plages & Colonnes...
Fonctionnalités phares : Mise au point de la grille | Affichage de conception | Barre de formule améliorée | Gestionnaire de Classeur & Feuille de calcul | Bibliothèque d’AutoTexte | Sélecteur de date | Merge Worksheets | Chiffrer/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 des ensembles d’outils :12 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 bien plus encore
Utilisez Kutools dans la langue de votre choix – disponible en Anglais, Espagnol, Allemand, Français, Chinois et plus de40 autres !

Améliorez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité incomparable. Kutools pour Excel propose plus de300 fonctionnalités avancées pour booster votre productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...


Office Tab apporte l’interface par onglets à Office, simplifiant considérablement 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 chaque jour !

Tous les modules complémentaires Kutools. Une seule installation

La suite Kutools for Office regroupe les modules complémentaires pour Excel, Word, Outlook & PowerPoint ainsi qu’Office Tab Pro, idéal pour les équipes travaillant sur plusieurs applications Office.

Excel Word Outlook Tabs PowerPoint
  • Suite tout-en-un — modules complémentaires Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Un installateur, une licence — installation en quelques minutes (compatible MSI)
  • Une synergie optimale — productivité accélérée sur l’ensemble des applications Office
  • Essai complet30 jours — sans inscription, ni carte bancaire
  • Meilleure valeur — économisez par rapport à l’achat d’add-ins individuels