Accéder au contenu principal

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

Comment additionner uniquement les cellules visibles en fonction de critères dans Excel ?

Author Xiaoyang Last modified

Dans Excel, les utilisateurs peuvent généralement additionner des cellules en fonction de critères spécifiques à l'aide de la fonction SOMME.SI. Cependant, lorsqu'il s'agit de données filtrées, appliquer simplement SOMME.SI inclura à la fois les cellules visibles et masquées dans le calcul. Cela entraîne souvent des résultats incorrects si vous devez additionner uniquement les cellules visibles (c'est-à-dire non filtrées) qui correspondent à des critères particuliers, comme illustré dans la capture d'écran ci-dessous.

Il est courant dans les flux de travail de reporting quotidien et d'analyse de données de devoir agréger avec précision des données dans des tableaux filtrés, par exemple lors du calcul des montants de ventes pour un produit ou une catégorie particulière après avoir appliqué certains filtres. Faire cela incorrectement peut entraîner des totaux incluant des données que vous n'aviez pas l'intention d'inclure, il est donc important d'utiliser des techniques qui additionnent uniquement les données visibles que vous voyez à l'écran.

Cet article présente plusieurs méthodes pratiques adaptées à différents scénarios et niveaux de compétence, chacune ayant ses avantages et éventuelles limitations. Vous pouvez sélectionner une solution qui correspond le mieux à la taille de votre feuille de calcul, à la structure de vos données et à vos habitudes opérationnelles. Des étapes détaillées pour chaque solution sont fournies ci-dessous, ainsi que des explications des erreurs potentielles et des moyens d'optimiser le processus de calcul pour des résultats plus fiables.


Additionner uniquement les cellules visibles basées sur un ou plusieurs critères avec une colonne d'aide

L'une des approches les plus intuitives et stables pour additionner des cellules visibles basées sur des critères spécifiques consiste à utiliser une colonne d'aide qui renvoie des valeurs uniquement pour les lignes visibles, puis à exploiter la fonction SOMME.SI avec vos conditions souhaitées. Cette méthode est particulièrement efficace si votre ensemble de données est fréquemment filtré de diverses manières ou si vous devez configurer des calculs que vos collègues peuvent facilement comprendre ou modifier.

Avantages : Simple à mettre en place ; toute la logique et les calculs restent visibles dans la feuille de calcul ; idéal pour les petits et moyens tableaux ; robuste lorsqu'il est nécessaire d'ajuster ou d'auditer les formules.

Limitations : Crée des colonnes supplémentaires ; peut nécessiter des mises à jour des formules si la disposition des lignes change ; une utilisation extensive peut devenir encombrante pour les très grands ensembles de données.

Par exemple, pour additionner uniquement les valeurs des commandes pour le produit "Hoodie" dans une plage filtrée :

1. Entrez ou copiez la formule suivante dans une colonne vide à côté de votre ensemble de données (par exemple, dans la cellule E2, en supposant que D soit votre colonne de valeurs) :

=AGREGAT(9,5,D2)

Faites glisser la poignée de recopie vers le bas pour remplir cette formule dans toutes les lignes de votre plage de données. Cette formule renverra la valeur de la colonne D si la ligne est visible et 0 si la ligne est masquée par un filtre.

A screenshot of Excel illustrating the use of the AGGREGATE formula to calculate visible cell values

2. Après avoir généré les valeurs d'aide dans la colonne E, utilisez une fonction SOMME.SI pour additionner uniquement les valeurs visibles en fonction de vos critères. Par exemple, pour additionner pour "Hoodie" dans la colonne A :

=SOMME.SI.ENS(E2:E12,A2:A12,A17)
Note : Ici, E2:E12 fait référence à votre nouvelle colonne d'aide contenant les valeurs des lignes visibles, A2:A12 est la plage de produits/critères, et A17 contient votre élément cible, "Hoodie" dans cet exemple. Assurez-vous que les plages de cellules référencées correspondent à la disposition de vos données.

A screenshot of Excel demonstrating the SUMIFS formula summing visible cells based on criteria

Conseils: Si vous souhaitez que votre total reflète plusieurs critères, par exemple en additionnant les valeurs de "Hoodie" qui sont également "Rouge", développez votre formule comme suit :
=SOMME.SI.ENS(E2:E12,A2:A12,A17,C2:C12,B17)

A screenshot of Excel showing the SUMIFS formula applied with multiple criteria for summing visible cells

Vous pouvez ajouter plus de critères en étendant les arguments de SOMME.SI.ENS dans le format =SOMME.SI.ENS(plage_somme, plage_critères1, critères1, [plage_critères2, critères2], [plage_critères3, critères3], ...). Vérifiez toujours vos plages pour assurer un alignement correct et des résultats attendus.

Attention : Si vous réorganisez, insérez ou supprimez des lignes après avoir configuré vos formules, vérifiez deux fois que toutes les références correspondent encore à votre structure de données. Parfois, des erreurs peuvent résulter de plages mal alignées ou de l'oubli de mettre à jour vos cellules de critères.


Additionner uniquement les cellules visibles basées sur des critères avec une formule

Si vous préférez une solution basée sur une formule qui ne nécessite pas l'ajout de colonnes d'aide, vous pouvez utiliser une combinaison des fonctions SOMMEPROD, SOUS.TOTAL, DECALER, LIGNE et MIN pour additionner les cellules visibles selon des critères spécifiques. Cette approche convient aux utilisateurs expérimentés d'Excel familiarisés avec les formules matricielles, et est particulièrement utile lorsque vous souhaitez garder votre feuille propre sans colonnes supplémentaires.

Avantages : Pas besoin de colonnes supplémentaires dans la feuille de calcul ; flexible et dynamique ; la formule se met à jour instantanément lorsque vous filtrez ou modifiez les critères.

Limitations : Les formules peuvent être complexes à lire ou à déboguer, surtout pour ceux qui ne sont pas familiers avec les fonctions matricielles ; les performances peuvent ralentir dans les très grands tableaux.

Copiez ou entrez la formule suivante dans une cellule vide (par exemple, pour additionner les cellules visibles pour "Hoodie" dans A2:A12, avec les valeurs réelles dans D2:D12, et les critères dans A17) :

=SOMMEPROD(SOUS.TOTAL(3;DECALER(A2:A12;LIGNE(A2:A12)-MIN(LIGNE(A2:A12));;1));(A2:A12=A17)*(D2:D12))

Après avoir entré la formule, appuyez sur Entrée pour obtenir le résultat souhaité, comme indiqué ci-dessous :

A screenshot of Excel using a SUMPRODUCT formula to sum visible cells based on criteria

Note : Dans cette formule, SOUS.TOTAL(3;DECALER(...)) vérifie quelles lignes sont visibles, (A2:A12=A17) définit votre condition de correspondance, et D2:D12 est la plage de valeurs à additionner. Ajustez les références en fonction de votre propre feuille de calcul.
Conseils : Pour étendre cela à plusieurs critères, ajoutez simplement d'autres termes conditionnels. Exemple : =SOMMEPROD(SOUS.TOTAL(3;DECALER(référence;LIGNE(référence)-MIN(LIGNE(référence));;1));(plage_critères1=critères1)*(plage_critères2=critères2)*(plage_somme)). Vérifiez toujours que les parenthèses regroupent correctement vos critères.

Attention : Cette approche est sensible aux plages spécifiées - des plages incohérentes ou chevauchantes peuvent déclencher des erreurs ou des résultats inattendus. Testez les cas limites, surtout lorsque le filtrage modifie le nombre ou la position des lignes visibles.


Additionner uniquement les cellules visibles basées sur des critères en utilisant du code VBA

Pour les utilisateurs avancés, l'utilisation de VBA offre une solution flexible pour additionner uniquement les cellules visibles selon des critères spécifiques, en particulier lors de la gestion de scénarios complexes ou de grands ensembles de données où les formules standard peuvent souffrir de goulets d'étranglement de performance ou lorsque les critères incluent une logique multi-conditions difficile à exprimer dans une seule formule. VBA peut itérer à travers chaque ligne visible, tester vos conditions et calculer la somme efficacement. Cela est particulièrement adapté aux tâches de reporting répétitives ou lors de l'automatisation des calculs de synthèse.

Avantages : Peut facilement gérer de grands ensembles de données, plusieurs ou critères dynamiques et une logique complexe ; le processus s'exécute rapidement même avec des milliers de lignes ; réduit le risque d'erreurs dues aux modifications manuelles des formules.

Limitations : Nécessite l'activation des macros ; certains utilisateurs peuvent ne pas être familiers avec VBA ou ne pas avoir les permissions adéquates ; les modifications nécessitent un accès à l'Éditeur de Macro. Effectuez toujours une sauvegarde avant d'exécuter du VBA sur des ensembles de données importants.

1. Pour commencer, ouvrez l'Éditeur VBA en cliquant sur Outils de Développeur > Visual Basic. Dans la fenêtre qui apparaît, allez dans Insertion > Module, et collez le code suivant dans le nouveau module :

Sub SumVisibleByCriteria()
    Dim ws As Worksheet
    Dim rng As Range
    Dim cell As Range
    Dim criteriaColumn As Range
    Dim sumColumn As Range
    Dim criteriaValue As Variant
    Dim total As Double
    Dim lastRow As Long
    Dim criteriaColNum As Integer
    Dim sumColNum As Integer
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set ws = Application.ActiveSheet
    
    ' Prompt user for criteria column and sum column
    Set criteriaColumn = Application.InputBox("Select the criteria range (e.g., A2:A100):", xTitleId, Type:=8)
    Set sumColumn = Application.InputBox("Select the values range to sum (e.g., D2:D100):", xTitleId, Type:=8)
    criteriaValue = Application.InputBox("Enter the criteria value to match:", xTitleId, Type:=2)
    
    If criteriaColumn Is Nothing Or sumColumn Is Nothing Or criteriaValue = "" Then
        MsgBox "Operation cancelled.", vbInformation, xTitleId
        Exit Sub
    End If
    
    If criteriaColumn.Rows.Count <> sumColumn.Rows.Count Then
        MsgBox "Criteria and sum ranges must be the same number of rows.", vbCritical, xTitleId
        Exit Sub
    End If
    
    total = 0
    
    For Each cell In criteriaColumn
        If Not cell.EntireRow.Hidden Then
            If cell.Value = criteriaValue Then
                total = total + sumColumn.Cells(cell.Row - criteriaColumn.Cells(1).Row + 1).Value
            End If
        End If
    Next cell
    
    MsgBox "The sum of visible cells matching the criteria is: " & total, vbInformation, xTitleId
End Sub

2. Cliquez sur le Run button bouton "Exécuter" (ou appuyez sur F5) pour exécuter le code. Une boîte de dialogue vous invitera à sélectionner à la fois la plage de critères (tels que vos noms de produits), la plage de valeurs à additionner et la valeur que vous souhaitez comme filtre (par exemple, "Hoodie"). La macro additionnera uniquement les lignes visibles où vos critères sont remplis et affichera le résultat dans un message contextuel.
Conseils pratiques : Utilisez ce code VBA lorsque vous devez souvent recalculer vos sommes après avoir modifié vos données ou vos filtres. Vous pouvez développer davantage le code VBA pour fonctionner avec plusieurs critères en ajoutant plus d'invitations de saisie ou de conditions logiques.

Dépannage : Assurez-vous toujours que les plages que vous sélectionnez pour les critères et les valeurs ont le même nombre de lignes et appartiennent aux mêmes colonnes que vos données filtrées. Si le code signale une erreur ou ne renvoie pas la somme attendue, revérifiez vos paramètres de filtre et votre sélection active.

Suggestions de synthèse : Pour une analyse de données nécessitant des calculs répétés uniquement sur les cellules visibles, enregistrer cette macro dans votre Classeur de Macros Personnel peut accélérer vos rapports quotidiens. Si une boîte de dialogue n'apparaît pas, vérifiez vos paramètres de macro et vos permissions de sécurité.


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