Fusionner les cellules selectionnées avec conservation texte

  • Initiateur de la discussion Initiateur de la discussion nak
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

nak

XLDnaute Occasionnel
Bonjour

Bon tout est dans le titre 🙂
Je recherche comment fusionner les cellules sélectionnées en conservant tout le texte quelles contiennent (séparé par un espace).
J'ai déjà une macro mais celle-ci fusionne uniquement les lignes, j'aimerais aussi fusionner les colonnes sélectionnées.

Ma macro actuelle:
Sub Fusion()
'
' Fusion Macro
' Fusion des cellules sélectionnées en conservant le texte.
'
' Touche de raccourci du clavier: Ctrl+Maj+F
'

Dim Colonne As Long
Dim Ligne As Long
Dim ColonneFin As Long
Dim LigneFin As Long
Dim ResultCell As Variant

With Selection
Ligne = .Cells(1).Row
LigneFin = .Cells(.Cells.Count).Row
Colonne = .Cells(1).Column
ColonneFin = .Cells(.Cells.Count).Column
End With

For i = Ligne To LigneFin
ResultCell = ""
For j = Colonne To ColonneFin
Range(Chr(64 + j) & CStr(i)).Select
ResultCell = ResultCell & " " & ActiveCell.FormulaR1C1
ActiveCell.FormulaR1C1 = ""
Next j
Range(Chr(64 + Colonne) & CStr(i)).Select
ActiveCell.FormulaR1C1 = ResultCell
Next i
Range(Chr(64 + Colonne + 1) & CStr(Ligne), Chr(64 + ColonneFin) & CStr(LigneFin)).Select
Selection.Delete Shift:=xlToLeft
End Sub

Je vous joint également un xls

Merci par avance.
 

Pièces jointes

Re : Fusionner les cellules selectionnées avec conservation texte

Salut

essaye ce code

Sub Fusion()
'
' Fusion Macro
' Fusion des cellules sélectionnées en conservant le texte.
'
' Touche de raccourci du clavier: Ctrl+Maj+F
'

Dim cel As Range, res As String

For Each cel In Selection
If cel <> "" Then res = res & " " & cel
Next
Range("h" & Selection.Row) = Trim(res)
End Sub

@+ Dudu
 
Re : Fusionner les cellules selectionnées avec conservation texte

Bonjour,

Code:
Function concat(champ)
   temp = ""
   For Each c In champ
     If Len(c.Value) > 1 Then temp = temp & c.Value & " "
   Next c
   concat = Left(temp, Len(temp) - 1)
End Function
JB
 

Pièces jointes

Re : Fusionner les cellules selectionnées avec conservation texte

hello

sans macro :

dans une 3 ème colonne =colonne1 & " " & colonne2
sélectionner colonne 3, copier
dans colonne3 collage spécial "valeurs"
fusionner 1 et 2, copier colonne 3, coller
si besoin supprimer colonne 3
 
Re : Fusionner les cellules selectionnées avec conservation texte

Merci à tous
Boisgontier ta formule me convient parfaitement 🙂
de cette manière je peux intégrer un module à la feuille que je veux.

Merci
 
Re : Fusionner les cellules selectionnées avec conservation texte

Bonjour,
Le code de BOISGONTIER est très pratique mais je souhaiterais qu'après la fusion, chaque texte soit renvoyé à la ligne automatiquement
A1
A2
A3
Qqn a t'il la solution?
Merci
 
Re : Fusionner les cellules selectionnées avec conservation texte

Merci mais je n'arrive pas à intégrer ce saut de ligne dans le script de BOISGONTIER :
Function concat(champ)
temp = ""
For Each c In champ
If Len(c.Value) > 1 Then temp = temp & c.Value & " "
Next c
concat = Left(temp, Len(temp) - 1)
End Function

Merci de votre aide!...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
914
Réponses
4
Affichages
735
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Retour