Regroupement d'un grand nombre de cellules

Résolu/Fermé
brotox Messages postés 93 Date d'inscription mercredi 25 novembre 2009 Statut Membre Dernière intervention 14 novembre 2016 - 19 déc. 2015 à 21:07
brotox Messages postés 93 Date d'inscription mercredi 25 novembre 2009 Statut Membre Dernière intervention 14 novembre 2016 - 19 déc. 2015 à 22:37
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




2 réponses

ccm81 Messages postés 10903 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 19 novembre 2024 2 428
19 déc. 2015 à 21:34
Bonjour

Un exemple avec une fonction personnalisée (macro)
http://www.cjoint.com/c/ELtuIc8OhUH

Cdlmnt
1
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 858
Modifié par JvDo le 19/12/2015 à 22:10
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
0
brotox Messages postés 93 Date d'inscription mercredi 25 novembre 2009 Statut Membre Dernière intervention 14 novembre 2016 5
19 déc. 2015 à 22:26
Merci pour vos deux réponses,
J'ai tout de fois un problème, la formule C1 indique "NOM?"
Je l'ai ré-écrite mais rien à faire :-S je suppose qu'il doit y avoir quelque chose à activer mais quoi ^^
Merci d'avance,
Guillaume
0
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 858
19 déc. 2015 à 22:34
les macros. il faut activer les macros.
quand tu ouvres le fichier, tu as un message qui te demande si tu veux les activer.... tu dis oui
0
brotox Messages postés 93 Date d'inscription mercredi 25 novembre 2009 Statut Membre Dernière intervention 14 novembre 2016 5
19 déc. 2015 à 22:37
Arf je suis nul, j'avais pas vu le bandeau...
Merci c'est exactement ça :-D
0