Excel - traitement de données texte
gryzzly
Messages postés
5220
Date d'inscription
Statut
Contributeur
Dernière intervention
-
gryzzly Messages postés 5220 Date d'inscription Statut Contributeur Dernière intervention -
gryzzly Messages postés 5220 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai un soucis :
j'ai une colonne qui contient des données textuelles, auquelles je souhaiterais rajouter le caractère "+" entre chaque élément.
Un exemple :
c'est infaisable a faire a la main, j'ai plus de 500 lignes a faire.
Auriez vous une idée de comment faire ?
avec les fonctions de texte, je m'ne sors pas. j'ai pensé a VBA, mais ca fait 5 ans j'y ai pas touché, je serais incapable de faire la macro.
Merci d'avance...
---
a moins que vous ne m'expliquiez comment faire directement l'ensemble des traitements, c'est a dire :
j'ai 10 valeur : a,b,c,d,e,f,g,h,i,j
et je souhaite récupérer tous les croisements possibles des 2, 3, 4... 10 élements.
--> a+b , a+c, a+d .... b+c, b+d..... a+b+c, a+b+d, a+b+e .... etc.etc... jusqu'a a+b+c+d+e+fg+h+i+j
Merci à celui qui me sors de cette galère !
--
Deux choses sont infinies : l'Univers et la bêtise humaine.
Mais en ce qui concerne l'Univers, je n'en ai pas encore acquis la certitude absolue. A. Einstein
J'ai un soucis :
j'ai une colonne qui contient des données textuelles, auquelles je souhaiterais rajouter le caractère "+" entre chaque élément.
Un exemple :
source resultat souhaité ab a+b ac a+c … … abc a+b+c hij h+i+j … … abcdefghij a+b+c+d+e+f+g+h+i+j
c'est infaisable a faire a la main, j'ai plus de 500 lignes a faire.
Auriez vous une idée de comment faire ?
avec les fonctions de texte, je m'ne sors pas. j'ai pensé a VBA, mais ca fait 5 ans j'y ai pas touché, je serais incapable de faire la macro.
Merci d'avance...
---
a moins que vous ne m'expliquiez comment faire directement l'ensemble des traitements, c'est a dire :
j'ai 10 valeur : a,b,c,d,e,f,g,h,i,j
et je souhaite récupérer tous les croisements possibles des 2, 3, 4... 10 élements.
--> a+b , a+c, a+d .... b+c, b+d..... a+b+c, a+b+d, a+b+e .... etc.etc... jusqu'a a+b+c+d+e+fg+h+i+j
Merci à celui qui me sors de cette galère !
--
Deux choses sont infinies : l'Univers et la bêtise humaine.
Mais en ce qui concerne l'Univers, je n'en ai pas encore acquis la certitude absolue. A. Einstein
Configuration: Windows XP Firefox 2.0.0.4
2 réponses
-
Bonjour
Essaye ceci
Sub xx() Dim L As Integer, i As Integer, xx As String Range("A1").Select 'se positionne sur la première cellule de la feuille active Do Until IsEmpty(ActiveCell()) xx = "'" 'intialise xx L = Len(ActiveCell.Value) 'longueur de la chaine de caractères For i = 1 To L If i = 1 Then xx = xx & Mid(ActiveCell.Value, i, 1) Else xx = xx & "+" & Mid(ActiveCell.Value, i, 1) End If Next i ActiveCell.Formula = xx 'met le résutlat dans la cellule active ActiveCell.Offset(1, 0).Select 'passe au suivant Loop End Sub
-
resolu.
tout betement en remplacant a par a+, b par b+ ... et en recuperantgauche(chaine; longueur_chaine - 1)
--edit--
lol, on s'est croisé...
merci pour ta réponse malgré tout !