Animateur qualité et informatique à votre disposition sur Lyon

Extraire des données d'une cellule - fonction Split (VBA)

Contexte: vous avez dans une colonne des données séparées par un caractère particulier. De ces cellules contenant des données "non atomiques", vous souhaitez extraire une ou plusieures parties.

Par exemple:


Vous noterez que dans la colonne B contenant les données, chaque partie a une dimension non fixe, de type chaine ou numérique.


Solution: je vous propose de créer une fonction VBA publique dans un module de code (si possible dans le classeur modèle) permettant de réaliser l'extraction.


La fonction Split permet d'extraire d'une chaine de caractères contenant des éléments séparés par un caractère spécial. C'est la fonction que nous allons utiliser. Pour cela créons la fonction publique uSplit :



Intégration: puisque la fonction uSplit est publique, vous pouvez l'utiliser dans les cellules. Sa synthaxe est:

  • paramètre n°1: référence à la cellule contenant les données - B2
  • paramètre n°2: index de la données à récupérer - 1
  • paramètre n°3: (optionnel) caractère utilisé pour la séparation des données - "#"



Note: le troisième paramètre est optionnel et par défaut défini comme étant le point-virgule. Aussi dans ce cas, vous n'avez pas à le déclarer.


Télécharger le fichier exemple