Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Vba problème de concaténation.

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

Arpette

XLDnaute Impliqué
Bonjour à tous,

dans une macro, je souhaiterais faire faire une concténation de deux cellules, dès lors que celles-ci sont renseignées. Je m'explique :
j'ai une plage A1 à A50 et B1 à B50. Si Ax et Bx sont renseignées je concatène en Cx, si non je ne fais rien.

Merci de votre aide.
 
Re : Vba problème de concaténation.

Bonjour Arpette,
Peut être avec :
Code:
[COLOR=blue]Sub[/COLOR] Concatene()
[COLOR=blue]With[/COLOR] Sheets("Feuil1")
    .Range("C1:C50").ClearContents
    [COLOR=blue]For[/COLOR] i = 1 [COLOR=blue]To[/COLOR] 50
        [COLOR=blue]If[/COLOR] .Cells(i, 1) <> "" [COLOR=blue]And[/COLOR] .Cells(i, 2) <> "" [COLOR=blue]Then[/COLOR]
            .Cells(i, 3).Value = .Cells(i, 1).Value & .Cells(i, 2).Value
        [COLOR=blue]End If[/COLOR]
    [COLOR=blue]Next[/COLOR] i
[COLOR=blue]End With[/COLOR]
[COLOR=blue]End Sub[/COLOR]
Cordialement
 
Re : Vba problème de concaténation.

Bonjour Arpette, salut Efgé,

Alors pourquoi pas simplement :

Code:
Sub Concatene()
With Sheets("Feuil1").Range("C1:C50")
    .FormulaR1C1 = "=RC1&RC2"
    .Value = .Value
End With
End Sub

Mais quelque chose nous échappe peut-être.

A+
 
Re : Vba problème de concaténation.


Bonsoir Efgé, merci c'est exactement ce que je voulais, je ne sais pas où je m'étais embarqué avec des target....
Encore merci.
@+
 
Re : Vba problème de concaténation.

Bonsoir Job, merci de ta réponse qui fonctionne, mais j'ai adopté celle Efgé.
Merci encore.
@+
 
Re : Vba problème de concaténation.

Bonjour,
Avec retard, j'ajouterai le test si un espace est présent, qui dans ce cas ferai la concaténation

If TRIM(.Cells(i, 1)) <> "" And TRIM(.Cells(i, 2)) <> "" Then

bonne journée
 
- 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
9
Affichages
508
Réponses
1
Affichages
235
Réponses
8
Affichages
733
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…