Fonction BYCOLAppliquer LAMBDA par colonne – Guide 2026
BYCOL applique une fonction LAMBDA à chaque colonne d'un tableau et retourne un résultat par colonne sous forme de tableau horizontal.
Syntaxe
BYCOL(tableau; lambda)tableau : Le tableau ou la plage à traiter colonne par colonne
lambda : La fonction LAMBDA à appliquer sur chaque colonne
Retourne un tableau horizontal avec un résultat par colonne
Comprendre BYCOL
La fonction BYCOL est l'une des fonctions les plus puissantes introduites dans Excel moderne. Elle fait partie de la famille des fonctions qui utilisent LAMBDA pour transformer les données de manière dynamique et élégante.
Contrairement aux formules traditionnelles où vous devez répéter une formule pour chaque colonne, BYCOL traite toutes les colonnes en une seule opération. C'est révolutionnaire pour l'analyse de données, car cela réduit considérablement la complexité des classeurs et améliore la performance.
Le principe est simple : vous définissez un tableau de données, puis vous spécifiez une fonction LAMBDA qui décrit comment traiter chaque colonne. Excel applique automatiquement cette fonction à chaque colonne et retourne tous les résultats en une seule ligne.
Fonctionnement interne
Quand vous utilisez BYCOL, Excel parcourt votre tableau de gauche à droite. Pour chaque colonne, il extrait toutes les valeurs de cette colonne, les passe à votre fonction LAMBDA comme un tableau vertical, puis stocke le résultat.
Par exemple, si vous avez un tableau de 10 lignes et 4 colonnes, BYCOL va créer 4 tableaux verticaux (un par colonne, chacun contenant 10 valeurs), appliquer votre LAMBDA à chacun, puis retourner 4 résultats en une ligne horizontale.
Cette approche est beaucoup plus performante que d'écrire quatre formules séparées, surtout quand vos calculs deviennent complexes ou que votre tableau contient des dizaines de colonnes.
Cas d'usage typiques
- •Analyse statistique : Calculer la moyenne, médiane, écart-type de chaque colonne de données (par exemple, notes par matière, ventes par mois)
- •Validation de données : Vérifier si chaque colonne contient des valeurs valides, identifier les colonnes avec des erreurs ou des valeurs manquantes
- •Transformation de données : Normaliser chaque colonne selon sa propre échelle, calculer des pourcentages relatifs au total de la colonne
- •Tableaux de bord : Créer des résumés dynamiques qui s'adaptent automatiquement quand on ajoute ou supprime des colonnes
- •Comparaisons : Identifier la colonne avec la valeur maximale, minimale, ou celle qui respecte certains critères
Exemples pratiques
Exemple 1 : Somme par colonne
Imaginons que vous avez les ventes de trois vendeurs sur plusieurs jours. Vous voulez calculer le total des ventes pour chaque vendeur.
Calcule la somme totale de chaque colonne avec une seule formule.
| A | B | C | |
|---|---|---|---|
| 1 | Vendeur A | Vendeur B | Vendeur C |
| 2 | 1200 | 1500 | 980 |
| 3 | 1350 | 1420 | 1100 |
| 4 | 1180 | 1680 | 1050 |
| 5 | 1400 | 1550 | 1200 |
=BYCOL(A1:C4; LAMBDA(col; SOMME(col)))Cette formule retourne trois valeurs (5130, 6150, 4330) représentant le total des ventes pour chaque vendeur. Sans BYCOL, vous auriez besoin de trois formules SOMME séparées.
Exemple 2 : Moyenne pondérée par colonne
Pour un tableau de notes d'étudiants par matière, calculez la moyenne de chaque matière en une seule formule.
Calcule automatiquement la moyenne de chaque matière.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Maths | Français | Histoire | Sciences |
| 2 | 15 | 14 | 16 | 13 |
| 3 | 12 | 15 | 14 | 15 |
| 4 | 18 | 13 | 15 | 17 |
| 5 | 14 | 16 | 13 | 14 |
| 6 | 16 | 14 | 17 | 16 |
=BYCOL(A1:D5; LAMBDA(col; MOYENNE(col)))Cette formule est particulièrement utile pour les enseignants ou les analystes de données qui doivent traiter de nombreuses colonnes de données numériques. Le résultat s'ajuste automatiquement si vous ajoutez ou modifiez des valeurs.
Exemple 3 : Maximum de chaque colonne
Pour un tableau de températures mensuelles dans différentes villes, trouvez la température maximale enregistrée dans chaque ville.
Identifie la température maximale pour chaque ville.
| A | B | C | |
|---|---|---|---|
| 1 | Paris | Lyon | Marseille |
| 2 | 12 | 14 | 18 |
| 3 | 15 | 16 | 21 |
| 4 | 18 | 19 | 24 |
| 5 | 22 | 24 | 28 |
| 6 | 25 | 27 | 32 |
=BYCOL(A1:C5; LAMBDA(col; MAX(col)))Cette technique est idéale pour identifier rapidement les pics dans des séries temporelles ou des données de monitoring, sans avoir à créer des formules répétitives.
Exemple 4 : Compter les valeurs supérieures à un seuil
Dans un tableau de performances, comptez combien de fois chaque équipe a dépassé l'objectif de 100 unités.
Compte combien de fois chaque équipe a dépassé 100.
| A | B | C | |
|---|---|---|---|
| 1 | Équipe Alpha | Équipe Beta | Équipe Gamma |
| 2 | 95 | 105 | 110 |
| 3 | 110 | 98 | 115 |
| 4 | 88 | 112 | 92 |
| 5 | 125 | 101 | 108 |
=BYCOL(A1:C4; LAMBDA(col; NB.SI(col; ">100")))BYCOL permet d'appliquer des fonctions conditionnelles comme NB.SI à chaque colonne séparément, ce qui est extrêmement utile pour les analyses de performance et les tableaux de bord.
Exemple 5 : Écart-type par colonne pour analyse de volatilité
Pour des données financières, calculez l'écart-type de chaque actif pour mesurer sa volatilité.
Mesure la volatilité de chaque action via l'écart-type.
| A | B | C | |
|---|---|---|---|
| 1 | Action A | Action B | Action C |
| 2 | 45.2 | 102.5 | 28.3 |
| 3 | 47.1 | 101.8 | 29.1 |
| 4 | 44.8 | 103.2 | 27.9 |
| 5 | 46.5 | 100.9 | 28.7 |
| 6 | 45.9 | 102.1 | 28.5 |
=BYCOL(A1:C5; LAMBDA(col; ECARTYPE.STANDARD(col)))Cette approche est fondamentale en finance quantitative. Un écart-type plus faible (comme 0.45 pour l'Action C) indique une volatilité moindre et potentiellement un investissement plus stable.
Erreurs fréquentes
#CALC! - Erreur dans la fonction LAMBDA
Cette erreur se produit quand votre fonction LAMBDA contient une erreur logique ou essaie d'effectuer une opération impossible sur une colonne.
Solution : Vérifiez que votre LAMBDA peut traiter tous les types de données dans vos colonnes. Par exemple, MOYENNE échouera si une colonne contient du texte.
#VALEUR! - Tableau invalide
Se produit quand le premier argument n'est pas un tableau valide ou quand la syntaxe LAMBDA est incorrecte.
Solution : Assurez-vous que votre premier argument est bien une plage ou un tableau (A1:C10) et que votre LAMBDA suit la syntaxe LAMBDA(paramètre; calcul).
Résultat déborde sur d'autres cellules
BYCOL retourne un tableau horizontal. Si les cellules à droite de votre formule contiennent déjà des données, vous obtiendrez une erreur de débordement.
Solution : Assurez-vous que les cellules à droite de votre formule sont vides. Si vous avez 5 colonnes dans votre tableau source, BYCOL aura besoin de 5 cellules horizontales pour afficher le résultat.
LAMBDA ne reçoit pas les bonnes données
Erreur conceptuelle fréquente : penser que LAMBDA reçoit une seule valeur alors qu'elle reçoit toute la colonne comme tableau.
Solution : Le paramètre de votre LAMBDA représente une colonne entière (tableau vertical). Utilisez des fonctions d'agrégation comme SOMME, MOYENNE, MAX qui peuvent traiter des tableaux.
Tableau source avec colonnes de hauteurs différentes
BYCOL nécessite un tableau rectangulaire parfait. Si vos colonnes ont des hauteurs différentes, la fonction échouera.
Solution : Définissez votre plage pour qu'elle couvre exactement le tableau rectangulaire, ou remplissez les cellules manquantes avec des valeurs neutres (0 ou texte vide selon le contexte).
Questions fréquentes
Quelle différence entre BYCOL et BYROW ?
BYCOL applique une fonction LAMBDA à chaque colonne d'un tableau et retourne un résultat par colonne. BYROW fait la même chose mais par ligne. Si vous avez 5 colonnes, BYCOL retournera 5 résultats (un par colonne).
Comment calculer la moyenne de chaque colonne avec BYCOL ?
Utilisez =BYCOL(A1:C10; LAMBDA(col; MOYENNE(col))). Cette formule applique MOYENNE à chaque colonne individuellement et retourne les trois moyennes en une seule ligne.
BYCOL fonctionne-t-il avec des colonnes de taille différente ?
Non, BYCOL nécessite un tableau rectangulaire (toutes les colonnes doivent avoir la même hauteur). Pour des colonnes de tailles différentes, vous devrez utiliser des formules séparées ou remplir avec des cellules vides.
Peut-on combiner plusieurs fonctions LAMBDA dans BYCOL ?
Oui, votre LAMBDA peut contenir n'importe quelle logique complexe. Par exemple : BYCOL(A1:D10; LAMBDA(col; SI(MAX(col) > 100; SOMME(col); MOYENNE(col)))) applique une condition différente selon le maximum de chaque colonne.
Fonctions similaires
Deviens un pro d'Excel
Rejoins Le Dojo Club pour maîtriser toutes les fonctions Excel avancées.
Essayer pendant 30 jours