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

XL 2010 Concaténer lignes en VBA

mic6259

XLDnaute Occasionnel
Bonjour
J'aimerais, selon le fichier joint, concaténer la ligne 2 en VBA dans la cellule F2 et conserver les cellules concaténées.
Puis créer un bouton
Ensuite faire la même chose pour la ligne 3 que je vais ajouter après.
J'ai cherché, en vain dans internet, je n'ai que concaténer par colonnes.
Merci beaucoup
 

Pièces jointes

  • test.xlsx
    8.7 KB · Affichages: 16
Solution
Bonjour Mic,
Pas sur d'avoir tout compris. cependant un essai avec :
VB:
Sub Concatene()
    Dim DL%, L%, C%, N
    Application.ScreenUpdating = False
    DL = Range("A65500").End(xlUp).Row
    For L = 2 To DL
        N = ""
        For C = 1 To 5
            N = N & Cells(L, C)
        Next C
        Cells(L, "F") = N
    Next L
End Sub

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Mic,
Pas sur d'avoir tout compris. cependant un essai avec :
VB:
Sub Concatene()
    Dim DL%, L%, C%, N
    Application.ScreenUpdating = False
    DL = Range("A65500").End(xlUp).Row
    For L = 2 To DL
        N = ""
        For C = 1 To 5
            N = N & Cells(L, C)
        Next C
        Cells(L, "F") = N
    Next L
End Sub
 

Pièces jointes

  • test (1).xlsm
    15.4 KB · Affichages: 19

soan

XLDnaute Barbatruc
Inactif
Bonjour mic6259, sylvanu,

ton fichier en retour. (j'ai ajouté un complément)

VB:
Sub Essai()
  Dim chn$, n&, i&, j As Byte
  n = Cells(Rows.Count, 1).End(3).Row
  Application.ScreenUpdating = 0
  For i = 2 To n
    chn = ""
    With Cells(i, 1)
      For j = 0 To 4
        chn = chn & .Offset(, j) & " ; "
      Next j
      .Offset(, 5) = Left$(chn, Len(chn) - 3)
    End With
  Next i
  ActiveCell.Select
End Sub

soan
 

Pièces jointes

  • test.xlsm
    16.1 KB · Affichages: 17

soan

XLDnaute Barbatruc
Inactif
@mic6259

j'ai dû m'absenter longtemps, et j'viens d'lire ton post #5.

ce que tu demandes est fait dans le fichier joint.

VB:
Sub Essai()
  Dim chn$, n&, i&, j As Byte
  n = Cells(Rows.Count, 1).End(3).Row
  Application.ScreenUpdating = 0
  For i = 2 To n
    chn = ""
    With Cells(i, 1)
      For j = 0 To 4
        chn = chn & .Offset(, j)
      Next j
      .Offset(, 5) = chn
    End With
  Next i
  ActiveCell.Select
End Sub

soan
 

Pièces jointes

  • test.xlsm
    16 KB · Affichages: 14

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…