Solution temporaire
Voici la solution temporaire que j'ai trouvée.
Formule de travail
Utilisez simplement cette formule :
`=SI(LONGUEUR(A2)<3, CONCATENER(RÉPTER("0", 3-LONGUEUR(A2)), A2), A2)`
Remplacez 3
par la longueur du rembourrage et 0
par le caractère de rembourrage. A2
est la source du rembourrage.
Explication
Considérez la feuille de calcul suivante :
-------------
| A | B |
-------------
| 1 | 001 |
-------------
| 2 | 002 |
-------------
| 31 | 031 |
-------------
| 45 | 045 |
-------------
| 500 | 500 |
-------------
Nous avons une colonne initiale (A) avec des entiers que nous voulons rembourrer. La colonne (B) contiendra la formule spéciale pour traiter les données.
Concaténer !
Tout d'abord, nous avons besoin d'une façon de concaténer la valeur de la colonne A
avec une chaîne de rembourrage. Nous pouvons le faire avec la fonction CONCATENER
:
=CONCATENER("00", A2)
Répéter !
Actuellement, le caractère de rembourrage 0
est répété deux fois dans notre formule. Ce n'est pas bon. Nous pouvons utiliser la fonction RÉPTER
pour répéter notre caractère de rembourrage plusieurs fois comme ceci :
=RÉPTER("0", 2)
Cette formule répétera 0
deux fois. Regroupons-les :
=CONCATENER(RÉPTER("0", 2), A2)
Calculer la longueur !
C'est mieux. Mais la longueur du rembourrage a une valeur constante dans notre formule et cela ne fonctionnera pas avec des nombres supérieurs à 9. Nous pouvons corriger cela en calculant la longueur de la chaîne rembourrée (en utilisant la fonction LONGUEUR
) et en la soustrayant de notre longueur cible :
=3-LONGUEUR(A2)
Ajoutons-le à notre formule :
=CONCATENER(RÉPTER("0", 3-LONGUEUR(A2)), A2)
Cependant, nous obtiendrons des résultats négatifs pour des valeurs supérieures à 999 et cela cassera la fonction RÉPTER
(le nombre de répétitions ne peut pas être négatif).
Nous pouvons facilement corriger cela en ajoutant une condition :
=SI(LONGUEUR(A2)<3, "APPLIQUER RÉPTER", "SORTIE TEL QUELLE")
Regroupons les derniers éléments ensemble :
=SI(LONGUEUR(A2)<3, CONCATENER(RÉPTER("0", 3-LONGUEUR(A2)), A2), A2)