La fonction SPLIT de Google Sheets divise le texte à chaque délimiteur, comme une virgule ou un espace, et place chaque morceau dans sa propre cellule. C'est un moyen rapide de séparer prénoms et noms ou de transformer une liste séparée par des virgules en colonnes.
Voici comment cela fonctionne :
Syntaxe
=SPLIT( text, delimiter, [split_by_each], [remove_empty_text] )
- texte – le texte ou la chaîne à diviser.
- délimiteur – un seul caractère ou un groupe de caractères que la fonction doit utiliser pour diviser le texte. Par défaut, chaque caractère du délimiteur est pris en compte séparément. Par exemple, si le délimiteur est "one", le texte est divisé autour des caractères "o", "n" et "e". Si vous ne voulez pas ce comportement, vous pouvez définir split_by_each sur FALSE. Notez que le délimiteur n'apparaît pas dans le résultat de la fonction.
- split_by_each – [ FACULTATIF – TRUE par défaut ] – avec l'option par défaut, la fonction utilise chaque caractère de la chaîne de délimitation pour diviser le texte. Si vous le définissez sur FALSE, la fonction considère le délimiteur comme un tout. Vous pouvez renseigner ce paramètre en écrivant TRUE ou FALSE, ou en indiquant 1 ou 0, respectivement.
- remove_empty_text – [ FACULTATIF – TRUE par défaut ] – ce paramètre indique si la fonction doit supprimer ou non les fragments de texte vides du résultat. Par défaut, les délimiteurs consécutifs sont traités comme un seul (si TRUE). Si FALSE, des cellules vides sont ajoutées entre les délimiteurs consécutifs. Vous pouvez renseigner ce paramètre en écrivant TRUE ou FALSE, ou en indiquant 1 ou 0, respectivement.
Comment utiliser la fonction SPLIT dans Google Sheets ?
La syntaxe a l'air bien plus complexe qu'elle ne l'est.
Pour vous familiariser avec la fonction, je vais vous montrer quelques exemples. Regardez la capture d'écran ci-dessous.
Vous pouvez voir que les résultats correspondent au texte d'entrée, découpé aux endroits où se trouvent les délimiteurs. Dans le premier exemple, le délimiteur est "e" : le résultat est donc une cellule avec tout le texte avant les "e" de "Sheetgo", et une cellule avec tout le texte après. Pour cela, je tape =Split(A2,B2).
C'est la même chose pour les autres exemples. Dans chacun, j'indique un délimiteur, et la fonction découpe le texte en morceaux situés avant, entre et après les délimiteurs. C'est très pratique pour séparer des données texte, comme des prénoms et noms séparés par une virgule, comme dans le troisième exemple ci-dessus.
Astuce : laissez des colonnes vides à droite
J'ai saisi toutes les fonctions dans la colonne D. En effet, la fonction SPLIT de Google Sheets répartit son résultat sur plusieurs cellules vers la droite, comme dans tous les exemples. Il est donc très important de laisser vides les cellules où les données doivent s'afficher. Sinon, la fonction renvoie une erreur #REF!.
Ces premiers exemples montrent la fonction SPLIT dans sa forme la plus simple. Je n'ai pas indiqué les paramètres facultatifs, qui ont donc gardé leur valeur par défaut. Je vais maintenant vous montrer ce qui se passe quand vous ajoutez les paramètres facultatifs split_by_each et remove_empty_text.
Fonction SPLIT avec le paramètre split_by_each
Le split_by_each est utilisé quand le délimiteur compte plus d'un caractère. Comme le montre l'image ci-dessous, modifier ce paramètre peut avoir un effet important sur le résultat de la fonction.
Dans cet exemple, je divise le mot "Countries" avec le délimiteur "one".
La valeur par défaut du paramètre split_by_each est 1 (TRUE) : la fonction prend en compte chaque caractère du délimiteur. Avec cette option, la fonction utilise donc "o", "n" et "e" comme délimiteurs individuels. Vous pouvez voir le résultat ci-dessus : le texte "Countries" est divisé en quatre parties.
L'exemple suivant utilise pour le paramètre split_by_each la valeur 0 (FALSE), qui indique à la fonction de traiter le texte du délimiteur comme un seul délimiteur de plusieurs caractères. Dans ce cas, la fonction ne divise le texte que sur le mot entier "one". Or "one" n'apparaît pas dans "Countries" : le texte n'est donc pas divisé du tout. Cela montre la grande différence de résultats quand vous modifiez le paramètre split_by_each avec un délimiteur de plusieurs caractères.
Fonction SPLIT avec le paramètre remove_empty_text
Voici maintenant un exemple qui utilise le paramètre remove_empty_text : il sert quand votre texte contient des délimiteurs consécutifs.
Si le paramètre est TRUE (valeur par défaut), il traite les délimiteurs consécutifs comme un seul ; si FALSE, il les traite comme des délimiteurs individuels et ajoute des cellules vides au résultat.
Voici la différence. J'ai une chaîne de texte qui contient des délimiteurs consécutifs, ici deux virgules côte à côte.
Dans le cas par défaut, où le paramètre remove_empty_text vaut 1 (TRUE), la fonction traite les virgules consécutives comme une seule et renvoie le texte divisé comme prévu.
Dans le second cas, en revanche, j'ai défini le paramètre remove_empty_text sur 0 (FALSE). La fonction traite maintenant chaque virgule comme un délimiteur distinct : elle ajoute donc une cellule vide au résultat pour représenter l'"espace" (même s'il n'y a aucun caractère d'espace) entre les deux virgules.
Fonction SPLIT : points à retenir
Voici quelques points à garder en tête quand vous utilisez la fonction SPLIT. D'abord, vérifiez toujours que vous avez assez de cellules vides à droite, car la fonction SPLIT peut renvoyer son résultat sur plusieurs cellules.
Ensuite, n'oubliez pas que le délimiteur est toujours retiré du texte. Par exemple, si vous séparez des chaînes de texte par des virgules, la virgule n'apparaît dans aucune des cellules du résultat.
Enfin, vous pouvez aussi diviser du texte en sélectionnant Données > Scinder le texte en colonnes. Cette méthode est toutefois moins polyvalente : mieux vaut donc utiliser la fonction SPLIT. Essayez les deux options pour vous faire votre propre idée !
Pour faire l'inverse et réunir des valeurs dans une seule cellule avec un délimiteur, utilisez TEXTJOIN dans Google Sheets.
Vous travaillez plutôt dans Excel ? Voici comment diviser des cellules dans Excel, y compris avec sa fonction TEXTSPLIT.
Note de la rédaction: Il s'agit d'une version révisée d'un article précédent qui a été mis à jour pour plus de précision et d'exhaustivité.


