Téléchargez l'exemple de classeur
Ce tutoriel va vous montrer comment séparer le texte et les nombres d'une chaîne alphanumérique dans Excel et Google Sheets.
Séparer le nombre et le texte de la chaîne
Cet article explique comment diviser les nombres et le texte si vous avez des données alphanumériques dont la première partie est du texte et la dernière partie est numérique (ou inversement). Vous n'avez besoin que de la partie numérique. Pour les cas plus complexes, consultez l'article Comment supprimer les caractères non numériques.
Extraire le numéro de la droite
Le cas le plus simple d'extraction de nombres d'une chaîne est lorsque le nombre se trouve à l'extrémité droite de cette chaîne. Nous localisons d'abord la position de départ du nombre avec la fonction FIND, puis l'extrayons avec la fonction RIGHT.
1 | =DROITE(B3,LEN(B3)-MIN(TROUVE({0,1,2,3,4,5,6,7,8,9},B3&"0123456789"))+1) |
Passons en revue la formule ci-dessus.
Trouver le premier numéro
Nous pouvons utiliser la fonction FIND pour localiser la position de départ du nombre.
1 | =MIN(TROUVER({0,1,2,3,4,5,6,7,8,9},B3&"0123456789")) |
Pour l'argument find_text de la fonction FIND, nous utilisons la constante de tableau {0,1,2,3,4,5,6,7,8,9}, ce qui permet à la fonction FIND d'effectuer des recherches distinctes pour chaque valeur du tableau constant.
L'argument inside_text de la fonction FIND est la valeur de la cellule & "0123456789". Dans notre exemple, "Lundi010123456789".
Étant donné que la constante matricielle contient 10 nombres, le résultat sera un tableau de 10 valeurs. Dans notre exemple : {7,8,11,12,13,14,15,16,17,18}. Ensuite, nous cherchons simplement le minimum de positions de nombres dans ce tableau et obtenons donc la place du premier nombre.
Extraire le numéro de pièce
Une fois que nous avons la position de départ du nombre trouvé à la fin de notre chaîne alphanumérique, nous pouvons utiliser la fonction DROITE pour l'extraire.
1 | =DROITE(B3,LEN(B3)-C3+1) |
Extraire une partie de texte
Avec la position de départ de la partie numérique, nous pouvons déterminer la fin de la partie texte en même temps. Nous pouvons utiliser la fonction LEFT pour l'extraire.
1 | =GAUCHE(B3,C3-1) |
Un cas plus compliqué d'extraction de nombres à partir d'une chaîne est lorsque le nombre peut être trouvé au début (c'est-à-dire à gauche) de la chaîne. Évidemment, vous n'avez pas besoin de trouver sa position de départ, mais plutôt la position où elle se termine. Nous trouvons d'abord la position du dernier numéro à l'aide de la fonction SUBSTITUTE, puis extrayons le numéro avec la fonction GAUCHE.
1 | =GAUCHE(B3,SOMME(LEN(B3)-LEN(SUBSTITUT(B3,{"0","1","2","3","4","5","6","7" ,"8","9"},"")))) |
Passons en revue la formule ci-dessus.
Trouver le dernier numéro
Avec la fonction SUBSTITUTE, vous pouvez remplacer chaque chiffre un par un par une chaîne vide, puis additionner combien de fois vous avez dû le faire.
1 | =SOMME(LEN(B3)-LEN(SUBSTITUT(B3,{"0","1","2","3","4","5","6","7","8" ,"9"},"")))) |
Lorsque vous remplacez chaque chiffre un par un par une chaîne vide, vous obtenez à chaque fois une chaîne dont la longueur est inférieure de un à la longueur d'origine. Dans notre cas, la longueur de 1-lundi et 0-lundi est à la fois 8. En soustrayant cette longueur de la longueur d'origine (9 dans notre cas), vous obtenez toujours 1. Lorsque vous les additionnez, vous obtenez la position de votre dernier nombre .
Extraire le numéro de pièce
Une fois que nous avons la dernière position du nombre trouvé au début de notre chaîne alphanumérique, nous pouvons utiliser la fonction GAUCHE pour l'extraire.
1 | =GAUCHE(B3,C3) |
Extraire une partie de texte
Ayant la dernière position du nombre trouvé au début de notre chaîne alphanumérique, nous avons déjà la position de départ de notre partie de texte et pouvons utiliser la fonction DROITE pour l'extraire.
1 | =DROITE(B3,LEN(B3)-C3) |
Séparer le texte et les chiffres dans Google Sheets
Tous les exemples expliqués ci-dessus fonctionnent de la même manière dans les feuilles Google que dans Excel.