Je voulais faire une petite macro permettant de faire une
concatenation automatique de cellules selectionn=E9es, et m'en
explique :
J'ai r=E9cuperer un tres grand tableau fait sous word que j'ai copi=E9
dans excel. Mon probl=E8me =E9tant que les retours =E0 la ligne fait sous
word se traduise sous excel par autant de cellules qu'il y a de retour
de lignes.
Ce nombre de lignes n'etant pas r=E9gulier, je pensais faire une
concatenation par apport =E0 une selection faite manuellement =E0 l'aide
de la souris et d'un clic obtenir la concatenation des cellules
selectionn=E9es, de plus je voulais inserer une cellule vierge au dessus
de ma selection afin d'y mettre le resultat de la concatenation.
Mes probl=E8mes sont les suivants :
1- Mon insertion cellule vers le bas afin d'inscrire le resultat de la
concatenation prend en compte le nombre de cellule que j'ai
selectionn=E9 or je ne voulais qu'une cellule.
2- J'avais proc=E9d=E9 par macro enregistrement automatique de la formule
concatener, mais je ne c'est pas comment faire pour remplacer les
R[1]C,R[2]C,R[3]C par les cellules de ma selection, en sachant que
celle ci change tout le temps, et que de plus, je voulais mettre entre
chaque reference de cellule un retour =E0 la ligne dans la cellule
(Chr(13))
Quelqu'un aurait il la solution =E0 ces probl=E8mes que je ne sais pas
r=E9soudre.
Merci par avance de votre aide.
Alex
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
isabelle
bonjour Alex,
fait le coller de ton tableau sur excel, en mode édition de la cellule.
ou bien en supposant que le résultat soit mit en cellule A1
Sub Macro1() For Each c In Selection Range("A1") = Range("A1") & c & " " Next End Sub
isabelle
Le 2010-11-17 10:19, Alex a écrit :
Bonjour à tous,
Je voulais faire une petite macro permettant de faire une concatenation automatique de cellules selectionnées, et m'en explique :
J'ai récuperer un tres grand tableau fait sous word que j'ai copié dans excel. Mon problème étant que les retours à la ligne fait sous word se traduise sous excel par autant de cellules qu'il y a de retour de lignes.
Ce nombre de lignes n'etant pas régulier, je pensais faire une concatenation par apport à une selection faite manuellement à l'aide de la souris et d'un clic obtenir la concatenation des cellules selectionnées, de plus je voulais inserer une cellule vierge au dessus de ma selection afin d'y mettre le resultat de la concatenation.
Mes problèmes sont les suivants :
1- Mon insertion cellule vers le bas afin d'inscrire le resultat de la concatenation prend en compte le nombre de cellule que j'ai selectionné or je ne voulais qu'une cellule.
2- J'avais procédé par macro enregistrement automatique de la formule concatener, mais je ne c'est pas comment faire pour remplacer les R[1]C,R[2]C,R[3]C par les cellules de ma selection, en sachant que celle ci change tout le temps, et que de plus, je voulais mettre entre chaque reference de cellule un retour à la ligne dans la cellule (Chr(13))
Quelqu'un aurait il la solution à ces problèmes que je ne sais pas résoudre. Merci par avance de votre aide. Alex
bonjour Alex,
fait le coller de ton tableau sur excel, en mode édition de la cellule.
ou bien en supposant que le résultat soit mit en cellule A1
Sub Macro1()
For Each c In Selection
Range("A1") = Range("A1") & c & " "
Next
End Sub
isabelle
Le 2010-11-17 10:19, Alex a écrit :
Bonjour à tous,
Je voulais faire une petite macro permettant de faire une
concatenation automatique de cellules selectionnées, et m'en
explique :
J'ai récuperer un tres grand tableau fait sous word que j'ai copié
dans excel. Mon problème étant que les retours à la ligne fait sous
word se traduise sous excel par autant de cellules qu'il y a de retour
de lignes.
Ce nombre de lignes n'etant pas régulier, je pensais faire une
concatenation par apport à une selection faite manuellement à l'aide
de la souris et d'un clic obtenir la concatenation des cellules
selectionnées, de plus je voulais inserer une cellule vierge au dessus
de ma selection afin d'y mettre le resultat de la concatenation.
Mes problèmes sont les suivants :
1- Mon insertion cellule vers le bas afin d'inscrire le resultat de la
concatenation prend en compte le nombre de cellule que j'ai
selectionné or je ne voulais qu'une cellule.
2- J'avais procédé par macro enregistrement automatique de la formule
concatener, mais je ne c'est pas comment faire pour remplacer les
R[1]C,R[2]C,R[3]C par les cellules de ma selection, en sachant que
celle ci change tout le temps, et que de plus, je voulais mettre entre
chaque reference de cellule un retour à la ligne dans la cellule
(Chr(13))
Quelqu'un aurait il la solution à ces problèmes que je ne sais pas
résoudre.
Merci par avance de votre aide.
Alex
fait le coller de ton tableau sur excel, en mode édition de la cellule.
ou bien en supposant que le résultat soit mit en cellule A1
Sub Macro1() For Each c In Selection Range("A1") = Range("A1") & c & " " Next End Sub
isabelle
Le 2010-11-17 10:19, Alex a écrit :
Bonjour à tous,
Je voulais faire une petite macro permettant de faire une concatenation automatique de cellules selectionnées, et m'en explique :
J'ai récuperer un tres grand tableau fait sous word que j'ai copié dans excel. Mon problème étant que les retours à la ligne fait sous word se traduise sous excel par autant de cellules qu'il y a de retour de lignes.
Ce nombre de lignes n'etant pas régulier, je pensais faire une concatenation par apport à une selection faite manuellement à l'aide de la souris et d'un clic obtenir la concatenation des cellules selectionnées, de plus je voulais inserer une cellule vierge au dessus de ma selection afin d'y mettre le resultat de la concatenation.
Mes problèmes sont les suivants :
1- Mon insertion cellule vers le bas afin d'inscrire le resultat de la concatenation prend en compte le nombre de cellule que j'ai selectionné or je ne voulais qu'une cellule.
2- J'avais procédé par macro enregistrement automatique de la formule concatener, mais je ne c'est pas comment faire pour remplacer les R[1]C,R[2]C,R[3]C par les cellules de ma selection, en sachant que celle ci change tout le temps, et que de plus, je voulais mettre entre chaque reference de cellule un retour à la ligne dans la cellule (Chr(13))
Quelqu'un aurait il la solution à ces problèmes que je ne sais pas résoudre. Merci par avance de votre aide. Alex
Alex
Bonjour,
Merci Isabelle pour ta réponse. J'ai adapté ta réponse ainsi :
For Each c In Selection ' Ta proposition : 'Range("A1") = Range("A1") & c & " " ' Mon adaptation pour mettre le resultat dans la cellule au au dessus de la sélection ActiveCell.Offset(-1, 0) = ActiveCell.Offset(-1, 0).Value & c & Chr(13) Next
Par ailleurs j'ai du coup réussi à faire l'insertion en automatique de la cellule supplémentaire au dessus de la sélection, afin d'y mettre le résultat :
ActiveCell.Offset(-1, 0).Insert Shift:=xlDown
Encore un grand merci, je coincais sur ce problème et ne trouvais pas la solution, alors quand j'ai vu ta réponse, je me suis dit mon dieu que je suis bete ;-) Alex
Bonjour,
Merci Isabelle pour ta réponse. J'ai adapté ta réponse ainsi :
For Each c In Selection
' Ta proposition :
'Range("A1") = Range("A1") & c & " "
' Mon adaptation pour mettre le resultat dans la cellule au au
dessus de la sélection
ActiveCell.Offset(-1, 0) = ActiveCell.Offset(-1, 0).Value & c &
Chr(13)
Next
Par ailleurs j'ai du coup réussi à faire l'insertion en automatique de
la cellule supplémentaire au dessus de la sélection, afin d'y mettre
le résultat :
ActiveCell.Offset(-1, 0).Insert Shift:=xlDown
Encore un grand merci, je coincais sur ce problème et ne trouvais pas
la solution, alors quand j'ai vu ta réponse, je me suis dit mon dieu
que je suis bete ;-)
Alex
Merci Isabelle pour ta réponse. J'ai adapté ta réponse ainsi :
For Each c In Selection ' Ta proposition : 'Range("A1") = Range("A1") & c & " " ' Mon adaptation pour mettre le resultat dans la cellule au au dessus de la sélection ActiveCell.Offset(-1, 0) = ActiveCell.Offset(-1, 0).Value & c & Chr(13) Next
Par ailleurs j'ai du coup réussi à faire l'insertion en automatique de la cellule supplémentaire au dessus de la sélection, afin d'y mettre le résultat :
ActiveCell.Offset(-1, 0).Insert Shift:=xlDown
Encore un grand merci, je coincais sur ce problème et ne trouvais pas la solution, alors quand j'ai vu ta réponse, je me suis dit mon dieu que je suis bete ;-) Alex