Concatenation de champs d'une colonne en ignorant les cellules vides

  • Initiateur de la discussion Initiateur de la discussion maca14
  • 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 !

M

maca14

Guest
Bonjour à tous,

Je crois qu'il s'agit de mon premier post bien que j'ai l'habitude de trouver mon bonheur lors de mes pérégrinations sur le forum.

Je souhaiterai concatener dans un seul champ, les cellulles de toutes une colonne en ignorant les celulles vides.
J'ai trouvé une solution mais qui ne me satisfait pas car trop contraignante puisque je peux avoir 200 lignes...

=SI(J10<>"";J10&"
";"")&SI(J11<>"";J11&"
";"")&SI(J12<>"";J12&"
...
...

Je précise que je n'ai aucune notion de programmation ni sur les macros, cependant si une solution existe que par le biais de VB, je la mettrai en oeuvre en suivant vos conseils.

Merci d'avance
 
Re : Concatenation de champs d'une colonne en ignorant les cellules vides

Bonjour maca14
Une fonction personnalisée peut effectivement faire l'affaire :
Code:
Function concat$(ParamArray p())
Application.Volatile
Dim oCel As Range, i&
   For i = 0 To UBound(p)
      For Each oCel In p(i).Cells
         concat = concat & oCel.Value
      Next oCel
   Next i
End Function
Voyez des exemples d'utilisation dans le classeur joint.​
ROGER2327
#4004


Vendredi 13 Phalle 137 (Sainte Bitre, ouvreuse et Etalon, couvreur, SQ)
6 Fructidor An CCXVIII
2010-W34-1T21:41:17Z
 

Pièces jointes

Re : Concatenation de champs d'une colonne en ignorant les cellules vides

Merci beaucoup, ROGER2327

Au début j'ai cru que ça ne fonctionnait pas mais en exploitant l'exemple j'ai vu que ça répondait parfaitement à mes besoins.
Au niveau de la mise en forme je souhaiterai mettre un retour chariot à chaque fin de cellule concaténée.
Le fichier excel ci joint présente dans la colonne C, ce que j'obtiens grâce à votre code, j'aimerai un affichage comme mentionné dans la colonne D, merci d'avance de votre aide.
 

Pièces jointes

Dernière modification par un modérateur:
Re : Concatenation de champs d'une colonne en ignorant les cellules vides

Re...
(...)
Le fichier excel ci joint présente dans la colonne C, ce que j'obtiens grâce à votre code, j'aimerai un affichage comme mentionné dans la colonne D, merci d'avance de votre aide.
(...)
Comme je l'indique à la fin de tous mes messages, je dispose d'Excel 2003. Je ne peux par conséquent traiter les fichiers de type .xlsm. Désolé.​
ROGER2327
#4007


Samedi 14 Phalle 137 (Bataille de Morsang, ST)
7 Fructidor An CCXVIII
2010-W34-2T15:52:22Z
 
Re : Concatenation de champs d'une colonne en ignorant les cellules vides

Bonjour Roger,

Désolé je n'ai pas pris le soin de lire attentivement ta signature le signalant.
Je reposte le fichier au format xls.
Merci d'avance de ton aide.
 

Pièces jointes

Re : Concatenation de champs d'une colonne en ignorant les cellules vides

Re...
Essayez ceci :
Code:
[COLOR="DarkSlateGray"][B]Function concat$(ParamArray p())
Application.Volatile
Dim oCel As Range, i&
   For i = 0 To UBound(p)
      For Each oCel In p(i).Cells
         If Not IsEmpty(oCel) Then concat = concat & oCel.Value & vbLf
      Next oCel
   Next i
   If concat <> "" Then concat = Left$(concat, Len(concat) - 1)
End Function[/B][/COLOR]
ROGER2327
#4014


Lundi 16 Phalle 137 (Nativité de Vibescu, prophète, SQ)
9 Fructidor An CCXVIII
2010-W34-4T21:44:18Z
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

X
Réponses
4
Affichages
2 K
xoxopeter
X
T
Réponses
8
Affichages
2 K
Tomas82
T
Retour