Regroupement d'un grand nombre de cellules
Résolu
brotox
Messages postés
93
Date d'inscription
Statut
Membre
Dernière intervention
-
brotox Messages postés 93 Date d'inscription Statut Membre Dernière intervention -
brotox Messages postés 93 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je suis en train d'apprendre à utiliser le logiciel R et je souhaiterai mettre au bon format certains de mes fichiers excel. Pour cela, il faudrait que je regroupe une centaine de cellule avec un nombre, pour les afficher dans une cellule avec une virgule pour les séparer.
Au cas où je ne suis pas clair, voici un exemple :
j'ai : 1 / 2 / 9 / 12 / 5 / 6 / 9
avec / = séparation des cellules.
et je voudrai : (1,2,9,12,5,6,9)
Je sais qu'il y a la fonction avec des & mais pour une centaine de cellules....
Merci d'avance,
Guillaume
Je suis en train d'apprendre à utiliser le logiciel R et je souhaiterai mettre au bon format certains de mes fichiers excel. Pour cela, il faudrait que je regroupe une centaine de cellule avec un nombre, pour les afficher dans une cellule avec une virgule pour les séparer.
Au cas où je ne suis pas clair, voici un exemple :
j'ai : 1 / 2 / 9 / 12 / 5 / 6 / 9
avec / = séparation des cellules.
et je voudrai : (1,2,9,12,5,6,9)
Je sais qu'il y a la fonction avec des & mais pour une centaine de cellules....
Merci d'avance,
Guillaume
2 réponses
-
Bonjour
Un exemple avec une fonction personnalisée (macro)
http://www.cjoint.com/c/ELtuIc8OhUH
Cdlmnt-
Bonjour ccm81,
je me suis permis d'ajouter 3 variables dans ta fonction :
sep pour le séparateur (par défaut c'est la virgule)
deb pour la chaîne de caractères à mettre au début du résultat de la concaténation (rien par défaut)
fin pour la chaîne de caractères à mettre à la fin du résultat de la concaténation (rien par défaut)
ainsi, une appel comme=koncat(A1:A14;"+*+";"[";"}")
fournira[1+*+2+*+3+*+4+*+5+*+6+*+7+*+8+*+9+*+10+*+11+*+12+*+13+*+14}
cordialement
edit :Public Function Koncat(plage As Range, Optional sep As String = ",", Optional deb As String = "", Optional fin As String = "") As String
Dim c As Range, s As String
s = ""
For Each c In plage
s = s & sep & c.Value
Next c
Koncat = deb & Right(s, Len(s) - Len(sep)) & fin
End Function -
-
-
-
Arf je suis nul, j'avais pas vu le bandeau...
Merci c'est exactement ça :-D