Aller au contenu principal

Qu'est-ce que la fonction BDSOMME ?

Définition
La fonction BDSOMME additionne les valeurs d'un champ (colonne) dans une base de données pour les enregistrements qui correspondent aux critères définis dans une zone séparée. Elle gère nativement les conditions ET (même ligne) et OU (lignes différentes) dans la zone de critères.

BDSOMME (DSUM en anglais) te sert le jour où SOMME.SI.ENS ne suffit plus, parce que ta condition demande soit ce critère soit cet autre, pas les deux à la fois. C'est la seule fonction de somme d'Excel qui gère nativement le OU, sans empiler plusieurs formules.

Cette fonction est particulièrement utile quand tu gères des tableaux de données structurées et que tu veux appliquer plusieurs filtres dynamiques sans multiplier les formules. Elle brille dans les tableaux de bord où l'utilisateur doit pouvoir modifier les critères sans toucher aux formules.

Syntaxe

Clique sur un argument pour aller à son explication.

La zone de critères doit OBLIGATOIREMENT contenir une ligne d'en-têtes identiques à ceux de la base de données (majuscules, accents et espaces compris). C'est la différence fondamentale avec SOMME.SI.ENS : BDSOMME exige une zone dédiée, mais cette contrainte offre une flexibilité bien supérieure pour les conditions OU.

Lucas, la mascotte du Dojo, inspecte les arguments de la fonction à la loupe

Comprendre chaque paramètre de la fonction BDSOMME

Les trois arguments s'enchaînent dans un ordre précis : tu pointes d'abord ta base avec ses en-têtes, puis tu nommes la colonne à additionner (entre guillemets, comme "Ventes"), et enfin tu désignes la zone de critères. Aucun n'est facultatif ici, et c'est justement cette zone de critères séparée, en troisième position, qui te donne les conditions OU que SOMME.SI.ENS ne sait pas faire.

1

base_de_données

: la plage de cellules qui constitue ta base de données, incluant obligatoirement les en-têtes de colonnes

Par exemple A1:E100A1:E1 contient les titres des colonnes. Les en-têtes sont essentiels : BDSOMME les utilise pour identifier les champs à traiter.

Si tu réorganises tes colonnes, la formule reste juste tant que les en-têtes ne changent pas. C'est l'un des avantages des fonctions BD* par rapport aux SOMME.SI qui s'appuient sur des positions de colonnes.

2

champ

: le nom de la colonne à additionner, entre guillemets comme `"Ventes"`, ou son numéro de position (`1` pour la première colonne, `2` pour la deuxième, etc.)

Utiliser le nom est plus lisible et évite les erreurs si tu réorganises tes colonnes.

Le nom doit correspondre exactement à l'en-tête de ta base de données, caractère par caractère.

Attention : Oublier les guillemets autour du nom de champ provoque une erreur #VALEUR!. Écris toujours "Ventes" et jamais Ventes sans guillemets.

3

critères

: une plage séparée contenant les en-têtes de colonnes (exactement comme dans ta base) et les conditions en dessous

Par exemple G1:H2G1:H1 contient les noms de colonnes et G2:H2 les valeurs à filtrer.

Plusieurs cellules sur une même ligne fonctionnent comme un ET logique (toutes les conditions doivent être vraies simultanément). Plusieurs lignes de conditions fonctionnent comme un OU logique (au moins une ligne suffit). Tu peux combiner les deux pour des filtres très précis : plusieurs colonnes par ligne pour le ET, plusieurs lignes pour le OU.

Lucas, la mascotte du Dojo, fait une démonstration pas à pas de la fonction dans Excel

Exemples pratiques pas à pas

Exemple 1

Comment additionner une colonne selon un critère avec la fonction BDSOMME

La réunion régionale est dans une heure et on te demande le chiffre d'affaires de la région Nord. Tes quatorze vendeurs sont listés avec leur région et le montant qu'ils ont réalisé, et tu veux le total du Nord sans trier ni filtrer quoi que ce soit. La fonction BDSOMME lit une zone de critères posée à côté du tableau et additionne d'un coup les ventes qui y correspondent.

Les étapes
  1. 1
    Dans une cellule, écris =BDSOMME(.
  2. 2
    En 1er argument : sélectionne le tableau des vendeurs avec sa ligne de titres, A1:C15. Inclure cette première ligne n'est pas une maladresse de sélection mais une exigence de la fonction. C'est là qu'elle apprend que la colonne B s'appelle Région et la colonne C Ventes.
  3. 3
    En 2ᵉ argument : écris le nom de la colonne à additionner entre guillemets, "Ventes". Le libellé doit être orthographié exactement comme l'en-tête de la colonne C. Seules les valeurs de cette colonne entrent dans le total.
  4. 4
    En 3ᵉ argument : sélectionne la zone de critères, E1:E2. Tu l'as préparée à côté du tableau, avec l'en-tête Région recopié en E1 et la valeur Nord juste en dessous. Ces deux cellules décident des lignes retenues, et tu y changes de région sans jamais rouvrir la formule.
  5. 5
    Ferme la parenthèse et appuie sur Entrée.
Au final, ta formule devrait ressembler à ça :=BDSOMME(A1:C15; "Ventes"; E1:E2)
Explication
La fonction lit la zone de critères, ne garde que les lignes dont la région vaut Nord (Marie, Sophie, Emma, Hugo, Lina et Alice), puis additionne leurs ventes pour arriver à 128 000 €. Remplace Nord par Sud en E2 et le total se recalcule tout seul, sans que tu touches à la formule.
Exemple 2

Comment croiser deux critères en ET avec la fonction BDSOMME

Un client t'appelle pour contester sa relance et tu dois lui annoncer son solde exact, tout de suite, au téléphone. Toutes les factures dorment dans le même tableau, mélangées entre plusieurs clients et deux statuts, et il te faut le total des impayées de ce client uniquement. La fonction BDSOMME vérifie les deux conditions en même temps, à condition de les poser côte à côte dans la zone de critères.

Les étapes
  1. 1
    Dans une cellule, écris =BDSOMME(.
  2. 2
    En 1er argument : sélectionne le tableau des factures avec sa ligne de titres, A1:C7. Les trois titres Client, Statut et Montant forment le vocabulaire que la zone de critères devra reprendre à l'identique. Un en-tête recopié de travers d'un côté ou de l'autre renvoie #VALEUR!.
  3. 3
    En 2ᵉ argument : écris le nom de la colonne à additionner entre guillemets, "Montant". Elle est distincte des deux colonnes qui servent à filtrer, et c'est le cas le plus courant.
  4. 4
    En 3ᵉ argument : sélectionne la zone de critères, E1:F2. Elle tient sur deux colonnes, avec les titres Client et Statut recopiés en E1 et F1, puis Entreprise ABC et Impayée écrits juste en dessous. Poser les deux valeurs sur la même ligne oblige la fonction à les vérifier ensemble, donc une facture impayée d'un autre client reste dehors.
  5. 5
    Ferme la parenthèse et appuie sur Entrée.
Voici la formule que tu obtiens à la fin :=BDSOMME(A1:C7; "Montant"; E1:F2)
Explication
Deux critères posés côte à côte sur une même ligne de la zone valent un ET : seules les lignes qui sont à la fois du client Entreprise ABC et au statut Impayée passent le filtre, et leurs montants s'additionnent (2 300 + 3 700 = 6 000 €). La facture de 1 500 € est bien impayée elle aussi, mais son client ne correspond pas, donc la fonction l'écarte.
Exemple 3

Comment utiliser un opérateur de comparaison avec la fonction BDSOMME

Le réassort de la semaine se prépare et une rupture sur une référence phare coûterait cher. Ton tableau liste chaque produit avec sa catégorie et son stock, et tu cherches le total des quantités restantes sur les références descendues sous les 50 unités, sans savoir à l'avance combien de lignes sont concernées. La fonction BDSOMME accepte un opérateur de comparaison directement dans la zone de critères, donc le seuil se change en une frappe.

Les étapes
  1. 1
    Dans une cellule, écris =BDSOMME(.
  2. 2
    En 1er argument : sélectionne le tableau des produits avec sa ligne de titres, A1:C7. La fonction y lit les noms Produit, Catégorie et Stock, ses seuls repères pour retrouver une colonne.
  3. 3
    En 2ᵉ argument : écris le nom de la colonne à additionner entre guillemets, "Stock". C'est aussi la colonne qui sert de filtre juste après, et rien n'interdit ce doublon.
  4. 4
    En 3ᵉ argument : sélectionne la zone de critères, E1:E2. L'en-tête Stock est recopié en E1, et la condition <50 s'écrit juste en dessous à la place d'une valeur exacte. Pour viser un autre seuil, tu réécris le contenu de E2 sans toucher à la formule.
  5. 5
    Ferme la parenthèse et appuie sur Entrée.
Une fois les morceaux assemblés, ta formule donne ça :=BDSOMME(A1:C7; "Stock"; E1:E2)
Explication
Un critère n'est pas forcément une valeur exacte : l'opérateur <50 écrit sous l'en-tête Stock ne retient que les références passées sous le seuil, et la fonction additionne leurs quantités (25 + 35 + 45 + 18 = 123). Rien n'interdit de filtrer et d'additionner la même colonne, et tous les opérateurs sont acceptés (>1000, >=100, <>0).
Exemple 4

Comment combiner des critères en OU avec la fonction BDSOMME

L'arbitrage budgétaire tombe vendredi et on te demande ce que pèsent ensemble le Marketing et le Commercial. Tes dépenses sont saisies ligne par ligne avec le département qui les porte, et tu veux ces deux services en un seul chiffre, sans empiler deux formules ni additionner leurs résultats à la main. La fonction BDSOMME gère ce OU nativement : il suffit d'empiler les deux départements dans la zone de critères.

Les étapes
  1. 1
    Dans une cellule, écris =BDSOMME(.
  2. 2
    En 1er argument : sélectionne le tableau des dépenses avec sa ligne de titres, A1:C7. Les six lignes de dépenses et les titres Département, Type et Montant doivent tenir dans la plage. Si la sélection démarre une ligne plus bas, la fonction prend la première dépense pour une ligne de titres et l'écarte du calcul.
  3. 3
    En 2ᵉ argument : écris le nom de la colonne à additionner entre guillemets, "Montant". C'est la seule colonne de nombres du tableau, et c'est bien son total que l'arbitrage attend.
  4. 4
    En 3ᵉ argument : sélectionne la zone de critères, E1:E3. L'en-tête Département est recopié en E1, puis les deux services à réunir s'empilent en dessous, Marketing en E2 et Commercial en E3. Le second n'existe pour la fonction que si la référence descend jusqu'à E3, sinon le total ne couvre que le Marketing.
  5. 5
    Ferme la parenthèse et appuie sur Entrée.
En mettant tout bout à bout, tu écris :=BDSOMME(A1:C7; "Montant"; E1:E3)
Explication
Deux valeurs empilées sous le même en-tête, sur deux lignes différentes, valent un OU : la fonction garde les lignes du Marketing et celles du Commercial, puis additionne les quatre montants retenus (12 000 + 9 800 + 5 200 + 2 400 = 29 400 €). Pour ajouter un troisième service, tu écris son nom en E4 et tu étends la zone d'une ligne.
Lucas, la mascotte du Dojo, l'air gêné face à une erreur Excel

Les erreurs fréquentes avec la fonction BDSOMME

Tout se joue sur les en-têtes : ceux de ta zone de critères doivent recopier au caractère près ceux de ta base (un accent ou un espace en trop, et tu récoltes un #VALEUR!). Le reste vient des mêmes causes : un nom de champ sans guillemets, une zone de critères qui oublie sa ligne de titres, ou une base dont la première ligne n'est pas une vraie ligne d'en-têtes.

Erreur #VALEUR! : en-têtes non correspondants

C'est l'erreur la plus fréquente avec BDSOMME. Elle survient quand les en-têtes de ta zone de critères ne correspondent pas exactement aux en-têtes de ta base de données : majuscules, accents ou espaces différents.

Solution : Copie-colle les en-têtes depuis ta base de données vers ta zone de critères au lieu de les retaper. Vérifie aussi qu'il n'y a pas d'espaces invisibles avant ou après le texte avec =SUPPRESPACE(cellule).

Nom de champ non reconnu : résultat vide ou erreur

Le nom du champ entre guillemets ne correspond à aucun en-tête de la base de données, ou les guillemets sont absents.

Solution : Vérifie que le nom du champ est entre guillemets et correspond exactement à un en-tête de colonne. En alternative, utilise le numéro de colonne (2 pour la deuxième colonne), mais c'est moins lisible et fragile si tu réorganises les colonnes.

Zone de critères sans ligne d'en-têtes

BDSOMME nécessite obligatoirement des en-têtes dans la zone de critères. Si tu mets directement les valeurs sans titre, la formule ne fonctionnera pas correctement.

Solution : Ta zone de critères doit toujours avoir au moins deux lignes : la première avec les noms de colonnes (identiques à la base), la seconde avec les valeurs à filtrer. Un oubli de la ligne d'en-têtes est la cause de 80% des erreurs avec toutes les fonctions BD*.

Base de données sans en-têtes dans la plage référencée

Si ta plage base_de_données ne commence pas par une ligne d'en-têtes, BDSOMME considère la première ligne de données comme des titres et ignore ces données dans les calculs.

Solution : Assure-toi que la première ligne de ta plage base_de_données contient bien les titres des colonnes. C'est une règle absolue pour toutes les fonctions BD*.

Lucas, la mascotte du Dojo, avec une ampoule, partage des astuces avancées

Astuces avancées avec BDSOMME

1Astuce

Laisse une cellule vide pour inclure tous les enregistrements

Si tu laisses une cellule de critères vide (avec seulement l'en-tête), BDSOMME ignore ce critère et inclut tous les enregistrements pour cette colonne. C'est parfait pour créer des filtres optionnels : si l'utilisateur ne remplit pas un critère, tous les enregistrements sont pris en compte.
Résultat : un tableau de bord flexible où chaque cellule de filtre est indépendante.

2Astuce

Crée des critères calculés avec des formules

Dans ta zone de critères, tu peux utiliser une formule pour définir un critère dynamique. Par exemple, pour filtrer les ventes du mois en cours, mets =">="&DATE(ANNEE(AUJOURDHUI());MOIS(AUJOURDHUI());1) dans ta cellule de critère.
Le critère se met à jour automatiquement chaque mois sans que tu touches à la formule.

Lucas, la mascotte du Dojo, compare deux fonctions Excel

BDSOMME vs SOMME vs SOMME.SI vs SOMME.SI.ENS

Utilise BDSOMME quand tu as besoin de conditions OU ou d'un tableau de critères modifiable par l'utilisateur. Pour des cas simples avec un ou deux critères ET, SOMME.SI ou SOMME.SI.ENS seront plus rapides à mettre en place.

CritèreBDSOMMESOMMESOMME.SISOMME.SI.ENS
Critères multiplesET et OUNon1 seulPlusieurs (ET uniquement)
Conditions OU combinéesOui (natif)NonNonNon
SyntaxeZone séparée requiseTrès simpleSimpleMoyenne
Critères dynamiquesFacile (cellules modifiables)NonAvec formulesAvec formules
Cas d'usage typiqueTableaux de bord interactifsTotaux simplesFiltrage basiqueFiltrage multicritères ET
Le savais-tu ?
BDSOMME est à peu près la seule fonction de somme qui gère le OU nativement. Là où SOMME.SI.ENS n'enchaîne que des ET, il te suffit de poser deux valeurs sous le même en-tête mais sur deux lignes de la zone de critères pour additionner les deux cas d'un coup.
FAQ

Questions fréquentes

BDSOMME utilise une zone de critères séparée avec des en-têtes, ce qui permet des conditions plus complexes : OU entre lignes, ET entre colonnes. SOMME.SI.ENS est plus simple pour des critères basiques en ET, mais elle ne gère pas nativement les conditions OU. Pour combiner OU et ET dans une même formule, BDSOMME est la seule option directe.

Ressources

Pour aller plus loin

Continue sur ta lancée après la fonction BDSOMME : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.

Tout voir