Bonjour,
je cherche une macro qui me permette de concaténer automatiquement une plage
de cellule (dans une seule colonne), me donnant le résultat sous format
Valeur et des Alt+Entrée entre chaque valeur. En fait, je cherche à
représenter plusieurs cellules dans une seule.
Petite précision: pour insérer le saut de ligne (alt+entrée) il faut faire: donnée1 & chr(10) & donnée2
Cela va-t-il?
-----Message d'origine----- Salut
Sub main()
Dim a, b, c As String
a = Range("A1").Value b = Range("A2").Value
'deux solutions possibles c = a + " " + b 'valable uniquement si a et b ne sont pas des chiffres c = a & " " & b
Range("A3").Value = c
End Sub
ça te va ?
-----Message d'origine----- Bonjour, je cherche une macro qui me permette de concaténer automatiquement une plage
de cellule (dans une seule colonne), me donnant le résultat sous format
Valeur et des Alt+Entrée entre chaque valeur. En fait, je cherche à
représenter plusieurs cellules dans une seule.
Merci d'avance
Vincent JACQUES
.
.
Daniel.M
Salut,
Sub ReGroupe() Dim s As String, C As Range
If Selection.Column = 1 Then Exit Sub ' pas de lignes en haut
For Each C In Selection ' concatène le contenu s = s & C.Value & Chr(10) Next C s = Left(s, Len(s) - 1) ' enlève le dernier Chr(10), facultatif Selection(0, 1) = s 'Selection.Offset(-1, 0).Merge ' ou la prochaine instruction Selection.Offset(-1, 0).HorizontalAlignment = xlCenterAcrossSelection End Sub
Salutations,
Daniel M.
"Setec Essarts" wrote in message news:3fdd88df$0$7153$
Bonjour, je cherche une macro qui me permette de concaténer automatiquement une plage de cellule (dans une seule colonne), me donnant le résultat sous format Valeur et des Alt+Entrée entre chaque valeur. En fait, je cherche à représenter plusieurs cellules dans une seule.
Merci d'avance
Vincent JACQUES
Salut,
Sub ReGroupe()
Dim s As String, C As Range
If Selection.Column = 1 Then Exit Sub ' pas de lignes en haut
For Each C In Selection ' concatène le contenu
s = s & C.Value & Chr(10)
Next C
s = Left(s, Len(s) - 1) ' enlève le dernier Chr(10), facultatif
Selection(0, 1) = s
'Selection.Offset(-1, 0).Merge ' ou la prochaine instruction
Selection.Offset(-1, 0).HorizontalAlignment = xlCenterAcrossSelection
End Sub
Salutations,
Daniel M.
"Setec Essarts" <a87essarts@setec.fr> wrote in message
news:3fdd88df$0$7153$626a54ce@news.free.fr...
Bonjour,
je cherche une macro qui me permette de concaténer automatiquement une plage
de cellule (dans une seule colonne), me donnant le résultat sous format
Valeur et des Alt+Entrée entre chaque valeur. En fait, je cherche à
représenter plusieurs cellules dans une seule.
If Selection.Column = 1 Then Exit Sub ' pas de lignes en haut
For Each C In Selection ' concatène le contenu s = s & C.Value & Chr(10) Next C s = Left(s, Len(s) - 1) ' enlève le dernier Chr(10), facultatif Selection(0, 1) = s 'Selection.Offset(-1, 0).Merge ' ou la prochaine instruction Selection.Offset(-1, 0).HorizontalAlignment = xlCenterAcrossSelection End Sub
Salutations,
Daniel M.
"Setec Essarts" wrote in message news:3fdd88df$0$7153$
Bonjour, je cherche une macro qui me permette de concaténer automatiquement une plage de cellule (dans une seule colonne), me donnant le résultat sous format Valeur et des Alt+Entrée entre chaque valeur. En fait, je cherche à représenter plusieurs cellules dans une seule.