Qu'est-ce que la fonction BITOU ?
BITOU (BITOR en anglais) te sert quand tu manipules des masques binaires en développement ou en configuration matérielle et que tu dois combiner plusieurs propriétés dans un seul entier, sans les décomposer bit par bit à la main. C'est le réflexe dès que plusieurs options ou permissions doivent cohabiter dans une seule valeur numérique.
Concrètement, c'est elle qui combine des permissions d'accès (Lecture + Écriture = 3), fusionne des masques de configuration de registres matériels pour des microcontrôleurs, ou vérifie qu'un ensemble complet de flags système est activé.

Comprendre chaque paramètre de la fonction BITOU
BITOU prend deux nombres, ni plus ni moins, et tous les deux sont obligatoires. Bonne nouvelle : leur ordre n'a aucune importance, car =BITOU(5;3) et =BITOU(3;5) donnent exactement le même résultat. Retiens juste la même contrainte pour chacun : un entier positif, jamais au-delà de 281 474 976 710 655.
nombre1
: le premier nombre entier de l'opération OU bit à bitIl doit être positif et inférieur à 281 474 976 710 656. Si tu fournis un nombre décimal, Excel le tronquera automatiquement. Ce nombre représente généralement un premier masque de bits, un ensemble de flags ou une configuration à combiner.
nombre2
: le deuxième nombre entier de l'opération OU bit à bitMêmes contraintes que nombre1 : il doit être un entier positif inférieur à 281 474 976 710 656. BITOU compare chaque bit de nombre1 avec le bit correspondant de nombre2, et active le bit résultant si au moins l'un des deux bits source est à 1.

Exemples pratiques pas à pas
Comment fusionner deux masques de permissions avec la fonction BITOU
Ton application range les droits de chaque rôle dans un unique entier, un bit par permission : Lecture vaut 1, Écriture vaut 2, Exécution vaut 4. Les droits arrivent en deux colonnes séparées selon le module, et tu veux le profil consolidé pour chaque rôle. La fonction BITOU réunit les deux masques en un seul nombre, sans additionner deux fois un droit déjà présent.
- 1Dans une cellule, écris
=BITOU(. - 2En 1er argument : clique sur la cellule du premier masque de droits,
B2. Elle contient le code de la Lecture,1. Comme la formule pointe la cellule et non le nombre lui-même, il suffit de changer la valeur dans la colonne pour que le profil consolidé se recalcule. - 3En 2ᵉ argument : clique sur la cellule du second masque de droits,
C2. Elle contient le code de l'Écriture,2. L'ordre des deux arguments est sans effet, et=BITOU(C2; B2)afficherait le même3. - 4Ferme la parenthèse et appuie sur Entrée, puis recopie la formule vers le bas. Les deux références sont relatives, donc chaque ligne fusionne le couple de masques qui lui appartient.
=BITOU(B2; C2)1) et Écriture (2) occupent des bits distincts, donc leur fusion donne 3, les deux droits côte à côte dans un seul entier. La dernière ligne montre que 1 et 6 cohabitent de la même façon et remplissent les trois bits, soit 7.Comment ajouter un droit à un profil existant avec la fonction BITOU
On te demande d'accorder le droit d'écriture à toute une équipe, mais chaque membre part d'un profil différent et personne ne doit rien perdre au passage. Certains possèdent déjà ce droit, et une addition bête doublerait leur valeur et casserait leur profil. La fonction BITOU allume le bit visé s'il manque et ne fait rien s'il est déjà là.
- 1Dans une cellule, écris
=BITOU(. - 2En 1er argument : clique sur la cellule du profil actuel,
B2. Elle contient les droits déjà acquis par Marie Dubois, et c'est la seule valeur qui change d'une ligne à l'autre. Rien de ce qui s'y trouve ne doit se perdre, d'où l'intérêt de partir de cette cellule plutôt que de réécrire un profil complet à la main. - 3En 2ᵉ argument : saisis le masque du droit d'Écriture,
2. Cette valeur est la même pour toute l'équipe, donc l'écrire en dur évite une colonne entière qui répéterait le même nombre à chaque ligne. - 4Ferme la parenthèse et appuie sur Entrée, puis recopie la formule sur toute la colonne. Le masque écrit en dur reste identique partout, alors que la référence
B2suit la ligne courante et va chercher le profil de chacun.
=BITOU(B2; 2)13 monte à 15 en gardant tout ce qu'il avait. Mieux, Sophie possède déjà l'Écriture et reste à 2 au lieu de passer à 4 comme le ferait une addition. Une simple somme fausserait ce profil, la fonction BITOU non.Comment fusionner trois masques en cascade avec la fonction BITOU
Tu montes la configuration d'un module dont les options viennent de trois sources différentes : la datasheet, une bibliothèque et tes propres réglages. Chaque source te donne son masque dans sa colonne, et le registre n'attend qu'une seule valeur à la fin. En imbriquant deux appels, tu empiles les trois masques dans un seul nombre.
- 1Dans une cellule, écris
=BITOU(. - 2En 1er argument : écris la fusion des deux premières sources et referme-la,
BITOU(A2; B2). Un argument n'est pas obligé d'être une cellule, et cet appel imbriqué fait tout aussi bien l'affaire. Son résultat ne s'affiche nulle part dans la feuille, car il sert seulement d'entrée à l'appel extérieur. - 3En 2ᵉ argument : clique sur la cellule du troisième masque,
C2. Elle porte la dernière source de la configuration, ici4. Sans cette troisième valeur, la formule s'arrêterait au3produit par l'appel intérieur. - 4Ferme la parenthèse et appuie sur Entrée. Une seule parenthèse reste ouverte à ce stade, puisque celle de l'appel intérieur a été refermée dès la deuxième étape.
=BITOU(BITOU(A2; B2); C2)BITOU(A2; B2) fusionne les deux premiers masques, puis l'appel extérieur y ajoute le troisième. La ligne 2, 8 et 16 donne ainsi 26, un entier où les trois bits d'origine sont allumés ensemble.
Les erreurs fréquentes avec la fonction BITOU
BITOU est exigeante sur ce qu'elle accepte en entrée, et c'est presque toujours là que ça coince. Un nombre négatif ou un masque qui dépasse les 48 bits autorisés déclenche #NOMBRE!, tandis qu'une cellule contenant du texte impossible à convertir renvoie #VALEUR!. Le piège commun : ces trois cas ne donnent pas la même erreur, donc le code qui s'affiche te dit déjà où chercher.
Utiliser des nombres négatifs
BITOU ne fonctionne qu'avec des nombres entiers positifs. Un nombre négatif comme -5 génère #NOMBRE! car la représentation en complément à deux n'est pas supportée.
Solution : Vérifie que tes deux arguments sont strictement positifs avant l'opération. Si tes données peuvent être négatives, filtre-les avec =SI(A1>=0; BITOU(A1;B1); "Erreur") pour éviter les erreurs silencieuses.
Dépasser la limite de 48 bits
Excel limite BITOU aux nombres de 48 bits maximum, soit 281 474 976 710 655. Au-delà, tu obtiens #NOMBRE! sans autre indication.
Solution : Vérifie tes valeurs d'entrée avant l'appel. Si tes masques peuvent dépasser cette borne, ajoute une validation : =SI(A1>281474976710655; "Dépassement"; BITOU(A1;B1)).
Fournir du texte non numérique
BITOU attend des valeurs numériques. Si une cellule contient du texte qui ne peut pas être converti en nombre (par exemple "abc"), Excel retourne #VALEUR!.
Solution : Assure-toi que tes cellules source contiennent bien des nombres. Note que "5" (texte qui ressemble à un nombre) est automatiquement converti, mais "abc" ne l'est pas. Utilise ESTNUM(A1) pour valider avant l'appel.

Astuces avancées avec BITOU
Visualise chaque étape avec DECBIN
Pour déboguer tes opérations binaires, crée une colonne auxiliaire avec =DECBIN(BITOU(A1;B1);8) pour afficher le résultat sur 8 bits. Tu verras instantanément quels bits ont été activés par la fusion, sans avoir à convertir de tête.
Ajoute aussi =DECBIN(A1;8) et =DECBIN(B1;8) pour comparer les trois colonnes côte à côte.
Combine plusieurs masques en cascade
BITOU ne prend que deux arguments, mais tu peux l'imbriquer pour fusionner plus de deux masques : =BITOU(BITOU(A1;B1);C1) combine trois valeurs en une seule opération.
Utile pour assembler des configurations provenant de plusieurs sources (datasheet, bibliothèques, calculs) avant d'écrire la valeur finale dans un registre.
Vérifie qu'un flag précis est actif avec BITET
Après avoir fusionné deux masques avec BITOU, utilise BITET pour vérifier si un bit spécifique est bien activé dans le résultat : =SI(BITET(BITOU(A1;B1);4)=4;"Bit 2 actif";"Bit 2 inactif").
Cette combinaison te permet de tester l'activation d'une fonctionnalité précise dans un masque de configuration composite.
Questions fréquentes
BITOU effectue un OU logique bit à bit au niveau binaire, tandis que OU évalue des conditions booléennes. Par exemple, =BITOU(5;3) retourne 7 (binaire : 101 OU 011 = 111), alors que =OU(5;3) retourne simplement VRAI car les deux valeurs sont non nulles. BITOU travaille au niveau des bits individuels, OU au niveau des valeurs complètes.
Non, BITOU nécessite des nombres entiers. Si tu fournis des nombres décimaux, Excel les tronque automatiquement vers zéro avant d'effectuer l'opération. Par exemple, =BITOU(5.9;3.2) est traité comme =BITOU(5;3) et retourne 7. Fais attention à cette troncature automatique qui peut causer des surprises dans tes calculs.
BITOU accepte des nombres entiers jusqu'à 281 474 976 710 655 (2^48 - 1), soit 48 bits. Au-delà, Excel retourne l'erreur #NOMBRE!. Cette limite est largement suffisante pour la plupart des usages en programmation et ingénierie, même pour des applications embarquées avancées.
Absolument. BITOU se combine très bien avec BITET (ET bit à bit), BITOUEXCLUSIF (XOR bit à bit), BITDECALG (décalage à gauche), BITDECALD (décalage à droite) et DECBIN (conversion en binaire). C'est particulièrement utile pour manipuler des flags, créer des masques complexes ou implémenter des algorithmes de bas niveau.
Utilise DECBIN pour convertir le résultat en binaire. Par exemple, =DECBIN(BITOU(5;3)) affiche "111", ce qui te permet de voir exactement quels bits ont été activés par l'opération OU. Tu peux aussi ajouter un deuxième paramètre à DECBIN pour fixer le nombre de bits affichés : =DECBIN(BITOU(5;3);8) affiche "00000111" sur 8 bits.
Pas directement, car BITOU n'accepte que deux arguments. Mais tu peux imbriquer les appels : =BITOU(BITOU(A1;B1);C1) combine trois masques en cascade. Pour un grand nombre de masques stockés dans une plage, envisage une approche avec RÉDUIRE (Excel 365) ou une colonne de calcul intermédiaire.
Pour aller plus loin
Continue sur ta lancée après la fonction BITOU : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.
Tout voir



