Fonction pour diviser une phrase en mots. (split)
V
Bonjour à tous :)
Je réalise une feuille Excel pour une personne ayant "rippé" tous ses CDs et vinyls en MP3. (ce qui fait quand même près de 170.000 fichiers...)
Le logiciel qu'il utilise pour gérer les tags de ces fichiers fournit un fichier CSV que j'importe dans Excel.
Le but est d'obtenir des infos, stats, etc. Autant par artiste que par genre, album, morceau... Ainsi que de vérifier d'éventuelles erreurs (tags manquants, noms commençant par un espace, ...)
Afin de filtrer les différentes recherches possibles, j'ai réalisé une recherche dynamique.
J'ai voulu que cette recherche prenne chaque terme séparé par un espace séparément.
Par exemple si je cherche "ge br" il me sort bien une liste où se trouve Georges Brassens :
Pour cela, j'ai utilisé plusieurs cellules en utilisant CHERCHE() et GAUCHE()/DROITE() pour restituer la recherche en termes différents.
Mais c'est juste super chiant à faire car une nouvelle formule est à ré-écrire dès qu'on veut ajouter un terme possible à la recherche...
J'ai vu qu'il existait en VBA la fonction SPLIT(). Mais il n'y a pas d'équivalent en fonction Excel, en dehors de Office 365.
Si ça peut aider quelqu'un... :)
Je réalise une feuille Excel pour une personne ayant "rippé" tous ses CDs et vinyls en MP3. (ce qui fait quand même près de 170.000 fichiers...)
Le logiciel qu'il utilise pour gérer les tags de ces fichiers fournit un fichier CSV que j'importe dans Excel.
Le but est d'obtenir des infos, stats, etc. Autant par artiste que par genre, album, morceau... Ainsi que de vérifier d'éventuelles erreurs (tags manquants, noms commençant par un espace, ...)
Afin de filtrer les différentes recherches possibles, j'ai réalisé une recherche dynamique.
J'ai voulu que cette recherche prenne chaque terme séparé par un espace séparément.
Par exemple si je cherche "ge br" il me sort bien une liste où se trouve Georges Brassens :
Pour cela, j'ai utilisé plusieurs cellules en utilisant CHERCHE() et GAUCHE()/DROITE() pour restituer la recherche en termes différents.Mais c'est juste super chiant à faire car une nouvelle formule est à ré-écrire dès qu'on veut ajouter un terme possible à la recherche...
J'ai vu qu'il existait en VBA la fonction SPLIT(). Mais il n'y a pas d'équivalent en fonction Excel, en dehors de Office 365.
Public Function couperphrase(tableau) As Variant
Dim compteur As Integer
compteur = 1
Dim i As Integer
Dim MonTableau
Dim TableauSortie()
MonTableau = Split(tableau, " ")
For i = 0 To UBound(MonTableau)
ReDim Preserve TableauSortie(1 To compteur)
TableauSortie(compteur) = MonTableau(i)
compteur = compteur + 1
Next
couperphrase = WorksheetFunction.Transpose(TableauSortie)
End FunctionL'utilisation est très simple :
Si ça peut aider quelqu'un... :)