Qu'est-ce que la fonction PERMUTATIONA ?
PERMUTATIONA (nom identique en anglais) te sert quand tu dois évaluer la solidité d'un code ou d'un mot de passe, ou construire un catalogue de références produit, sachant qu'un même caractère ou objet peut revenir plusieurs fois dans le résultat final.
C'est l'outil parfait pour toutes tes analyses combinatoires avec répétition : tu n'as qu'à indiquer le nombre total d'éléments disponibles et le nombre de choix à effectuer, et Excel calcule automatiquement toutes les arrangements possibles en autorisant la réutilisation.
Syntaxe
=PERMUTATIONA(nombre; nombre_choisi)
Comprendre chaque paramètre de la fonction PERMUTATIONA
Les deux arguments se lisent comme une phrase : d'abord nombre, ta réserve d'éléments disponibles, puis nombre_choisi, le nombre de positions à remplir. Les deux sont obligatoires et doivent être des entiers positifs ; si tu glisses une décimale, Excel la rabote en silence à l'entier inférieur.
La grande liberté ici, c'est que nombre_choisi a le droit de dépasser nombre : comme tu peux réutiliser un élément autant de fois que tu veux, =PERMUTATIONA(3; 5) est parfaitement valide et renvoie 243.
nombre
: c'est le nombre total d'objets ou d'éléments disponibles dans ton ensemblePar exemple, si tu crées un code avec des chiffres, ton nombre est 10 (les chiffres de 0 à 9). Si tu utilises des lettres majuscules, ton nombre est 26.
Ce paramètre doit être un entier positif supérieur ou égal à 0. Si tu fournis une valeur décimale, Excel la tronquera automatiquement à l'entier inférieur.
nombre_choisi
: c'est le nombre d'éléments que tu veux choisir parmi ton ensemblePour un code PIN à 4 chiffres, nombre_choisi vaut 4. Pour un mot de passe à 8 caractères, nombre_choisi vaut 8. Chaque position peut prendre n'importe quelle valeur de l'ensemble, car la répétition est autorisée.
Contrairement à PERMUTATION, nombre_choisi peut être supérieur à nombre. Par exemple, =PERMUTATIONA(3; 5) est valide et donne 243 (3⁵) : tu as 3 options et tu effectues 5 choix successifs en pouvant répéter.

Exemples pratiques pas à pas
Comment compter le nombre de codes possibles avec répétition avec la fonction PERMUTATIONA
Un audit passe la semaine prochaine sur seize systèmes d'accès répartis entre Paris et Lyon, et la question posée est toujours la même : combien de codes différents chaque clavier peut-il produire, donc combien d'essais suffiraient pour tous les épuiser. Ton tableau donne le nombre de touches disponibles sur chaque système, et tous les codes font quatre positions. La fonction PERMUTATIONA compte ces codes en tenant compte du fait qu'un même chiffre peut resservir plusieurs fois dans le même code.
- 1Dans une cellule, écris
=PERMUTATIONA(. - 2En 1er argument : clique sur la cellule qui donne le nombre de touches,
B2. Elle affiche3pour le clavier deSYS-100, et c'est le réservoir dans lequel chaque position du code vient piocher. - 3En 2ᵉ argument : saisis le nombre de positions du code,
4. Tous les systèmes de l'audit utilisent un code à quatre positions, et c'est ici que la fonction PERMUTATIONA se sépare de sa voisine sans répétition. Ce chiffre a parfaitement le droit de dépasser le nombre de touches, car quatre positions pour trois chiffres ne posent aucun problème quand un même chiffre peut resservir. - 4Ferme la parenthèse et appuie sur Entrée.
=PERMUTATIONA(B2; 4)3 × 3 × 3 × 3 et renvoie 81 : le clavier de SYS-100 n'a que trois touches, mais chacune des quatre positions du code peut les reprendre toutes, y compris une touche déjà utilisée. Une fois la formule recopiée, la colonne classe tes sites par fragilité, 16 codes seulement pour les cadenas à deux touches de SYS-102. C'est cette autorisation de répéter qui explique des totaux aussi bas : le réservoir ne s'épuise jamais.Comment compter le nombre de codes qui réutilisent un chiffre avec les fonctions PERMUTATIONA et PERMUTATION
La nouvelle politique de sécurité veut interdire les codes qui réutilisent deux fois la même touche, jugés trop lisibles sur un clavier usé. Avant de trancher, on te demande ce que cette règle coûterait vraiment : combien de codes elle retirerait à chaque système. Tu comptes donc, pour chaque clavier, les codes qui répètent au moins un chiffre. La fonction PERMUTATIONA donne le total des codes possibles, la fonction PERMUTATION donne ceux qui n'en répètent aucun, et ce qui reste entre les deux est précisément la population visée par la règle.
- 1Dans une cellule, écris
=SIERREUR(. - 2En 1er argument : écris le calcul à protéger et referme chaque fonction,
PERMUTATIONA(B2; C2)-PERMUTATION(B2; C2). La fonction PERMUTATIONA compte tous les codes du clavierSYS-103, répétitions comprises, soit625, et la fonction PERMUTATION retranche les120codes qui ne réutilisent jamais un chiffre. Il ne reste donc que ceux qui en répètent au moins un. - 3En 2ᵉ argument : écris la valeur de repli et referme-la,
PERMUTATIONA(B2; C2). Elle sert aux claviers qui ont moins de touches que de positions, là où la soustraction précédente échoue parce que la fonction PERMUTATION renvoie#NOMBRE!. Dans ce cas tous les codes répètent forcément un chiffre, et le repli affiche ce total complet plutôt qu'un code d'erreur. - 4Ferme la parenthèse de la fonction SIERREUR et appuie sur Entrée. Les fonctions imbriquées ont toutes été refermées dans leurs étapes.
=SIERREUR(PERMUTATIONA(B2; C2)-PERMUTATION(B2; C2); PERMUTATIONA(B2; C2))SYS-103, la fonction PERMUTATIONA compte 625 codes au total quand la fonction PERMUTATION n'en compte que 120 sans jamais réutiliser un chiffre : la soustraction isole les 505 codes restants, ceux qui répètent au moins une touche. Les deux dernières lignes basculent sur la valeur de repli, et c'est exactement ce qu'il faut : avec 3 touches pour 4 positions, la fonction PERMUTATION renvoie #NOMBRE! parce qu'aucun code sans répétition n'existe, donc les 81 codes répètent tous un chiffre.
Les erreurs fréquentes avec la fonction PERMUTATIONA
Avec PERMUTATIONA, le faux pas le plus coûteux n'est pas une erreur rouge mais un résultat juste qui répond à la mauvaise question : tu voulais PERMUTATION (sans répétition) et tu as compté les répétitions, ou l'inverse. Demande-toi toujours si un même élément peut réapparaître dans ton contexte réel.
Les deux autres pièges sont plus francs : un argument négatif ou un calcul qui crève le plafond d'Excel (au-delà de 1E+308) renvoie #NOMBRE!, et une valeur décimale est tronquée sans le moindre avertissement.
Confondre PERMUTATIONA et PERMUTATION
PERMUTATION interdit la répétition (chaque élément ne peut être utilisé qu'une seule fois), tandis que PERMUTATIONA l'autorise. Pour 3 objets dont on choisit 2 : =PERMUTATION(3; 2) = 6 (AB, AC, BA, BC, CA, CB), mais =PERMUTATIONA(3; 2) = 9 (les 6 précédents + AA, BB, CC).
Solution : Vérifie si la répétition est physiquement possible dans ton contexte. Pour un code PIN (même chiffre deux fois autorisé) utilise PERMUTATIONA. Pour un podium sportif (personne ne peut être 1er et 2e simultanément) utilise PERMUTATION.
Erreur #NOMBRE! avec des paramètres négatifs ou trop grands
Excel retourne #NOMBRE! si l'un des paramètres est négatif ou si le résultat dépasse 1E+308 (la limite de calcul d'Excel). Par exemple, =PERMUTATIONA(-5; 3) et =PERMUTATIONA(100; 100) provoquent tous les deux cette erreur.
Solution : Vérifie que tes deux paramètres sont positifs ou nuls. Pour les très grands calculs, teste d'abord avec des valeurs plus petites. Si le résultat dépasse les capacités d'Excel, utilise des logarithmes (=nombre_choisi * LOG(nombre)) pour travailler sur l'ordre de grandeur.
Résultat inattendu avec des valeurs décimales
Si tu passes 10,7 comme premier paramètre, Excel le tronque silencieusement à 10 sans avertissement. Le résultat est juste mathématiquement mais peut ne pas correspondre à ton intention si tu avais des données arrondies par erreur.
Solution : Utilise la fonction TRONQUE() explicitement pour rendre la troncature visible dans ta formule : =PERMUTATIONA(TRONQUE(A1); TRONQUE(B1)). Cela clarifie l'intention et évite les confusions lors d'une relecture.

PERMUTATIONA vs PERMUTATION vs COMBIN vs COMBINAISON
Deux questions tranchent le choix : l'ordre des éléments compte-t-il, et peut-on réutiliser un même élément ? PERMUTATIONA est la seule qui répond oui aux deux : c'est elle qu'il te faut pour un code PIN ou un mot de passe, où 12 n'est pas 21 et où le même chiffre peut revenir.
Si l'ordre compte mais sans répétition (un podium), prends PERMUTATION ; si l'ordre est indifférent, passe à COMBIN (sans remise, comme une équipe à former) ou COMBINAISON (avec remise). À données égales, PERMUTATIONA donne toujours le plus grand total : 10 000 contre 5 040 pour 10 chiffres et 4 positions.
| Critère | PERMUTATIONA | PERMUTATION | COMBIN | COMBINAISON |
|---|---|---|---|---|
| Répétition autorisée | Oui | Non | Non | Oui |
| L'ordre compte | Oui | Oui | Non | Non |
| Formule (n objets, k choix) | n^k | n! / (n-k)! | n! / (k! × (n-k)!) | (n+k-1)! / (k! × (n-1)!) |
| Exemple : 10 chiffres, 4 choix | 10 000 | 5 040 | 210 | 715 |
| Cas d'usage typique | Code PIN, mot de passe | Podium, classement | Équipe de N parmi M | Tirage avec remise non ordonné |
Questions fréquentes
PERMUTATION compte les arrangements sans répétition (chaque élément ne peut être utilisé qu'une seule fois), tandis que PERMUTATIONA autorise la répétition. Par exemple, pour un code PIN à 4 chiffres parmi 10 possibles : PERMUTATIONA donne 10 000 combinaisons (car on peut répéter 1111, 2222, etc.), alors que PERMUTATION donnerait seulement 5 040 (chaque chiffre ne peut apparaître qu'une fois).
PERMUTATIONA utilise une formule très simple : nombre^nombre_choisi. Par exemple, pour 5 objets dont on choisit 3 avec répétition, le calcul est 5³ = 125. C'est beaucoup plus simple que PERMUTATION qui utilise des factorielles. Tu peux vérifier le résultat directement avec la formule =A1^B1 si nombre est en A1 et nombre_choisi en B1.
Parce qu'autoriser la répétition augmente considérablement le nombre de possibilités. Avec PERMUTATIONA, tu as toujours le nombre total d'options disponibles à chaque étape, alors qu'avec PERMUTATION, tu as une option de moins à chaque choix (l'élément déjà sélectionné ne peut plus être repris).
Non au sens strict : Excel tronque automatiquement les décimales à l'entier inférieur sans erreur ni avertissement. Donc =PERMUTATIONA(10,9; 4) sera interprété comme =PERMUTATIONA(10; 4). En revanche, des valeurs négatives ou un résultat dépassant 1E+308 produisent l'erreur #NOMBRE!.
Excel peut calculer des nombres jusqu'à environ 1E+308. Au-delà, tu obtiens #NOMBRE!. Par exemple, =PERMUTATIONA(100; 100) dépasse cette limite. Pour les très grands nombres, utilise des logarithmes : =nombre_choisi * LOG(nombre) donne le logarithme en base 10 du résultat, ce qui permet de comparer les ordres de grandeur.
Pour aller plus loin
Tout ce dont tu as besoin pour maîtriser la fonction PERMUTATIONA se trouve ici.
Télécharge notre cours Excel complet en PDF
Télécharger
Entraîne-toi sur nos 55 exercices corrigés
S’entraîner
Découvre le lexique Excel décrypté de A à Z
Ouvrir le lexique
Télécharge nos 308 modèles Excel prêts à l’emploi
Voir les modèles
Récupère la fiche récap de ton métier
Voir les métiers


