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

Concatenation d'un nombre inconnu de colonnes dans un tableau

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 !

lolobebop

XLDnaute Nouveau
bonjour à tous,

je me tourne vers vous car après de nombreuses recherches, je n'ai pas trouvé de réponse à mon problème.

je souhaite concaténer plusieurs colonnes d'un tableau mais sans savoir à l'avance combien il y a de colonnes dans celui-ci.
quelqu'un aurait-il une solution à mon problème ?

voici le code que j'ai déjà écrit mais à modifier car il n’effectue pas ce que je veux

Code:
For k = 16 To 23
    Onglet = Sheets(k).Name
    
    ' Début du contrôle des onglets 
    Workbooks(FichierRef).Activate
    Workbooks(fichier_Macro).Sheets(Onglet).Select
    
    With Workbooks(fichier_Macro).Sheets(Onglet).range("A:A")
    Set c = .Find("Ranges", LookIn:=xlValues)
    If Not c Is Nothing Then
        Lig = c.Row
    End If
    
    End With
    
    Der_Col = Cells(Lig + 1, 256).End(xlToLeft).Column
    ligneFin = Cells(65536, 1).End(xlUp).Row
    
    Workbooks(FichierRef).Activate
    Montab3 = Workbooks(fichier_Macro).Sheets(Onglet).range(Cells(Lig, 1), Cells(ligneFin, Der_Col)).Value
    
    
    Workbooks(FichierCont).Activate
    Workbooks(FichierCont).Sheets(Onglet).Select
    
    Der_Col2 = Cells(Lig2 + 1, 256).End(xlToLeft).Column
    ligneFin2 = Cells(65536, 1).End(xlUp).Row

    
    Montab4 = Workbooks(FichierCont).Sheets(Onglet).range(Cells(Lig, 1), Cells(ligneFin2, Der_Col2)).Value

     ReDim CodesHisto(1 To UBound(Montab3, 1))
     ReDim CodesModif(1 To UBound(Montab4, 1))
    
    For i = Lig To UBound(Montab3, 1)
        CodesHisto(i) = Montab3(i, 1).....Montab3(i,Der_Col) ' c'est ici que je voudrais stocker toutes mes colonnes concaténées
    Next i
    
    For i = Lig To UBound(Montab4, 1)
        CodesModif(i) = Montab4(i, 1).....Montab4(i,Der_Col2) ' Idem que pour Montab3
    Next i
    
    For i = 1 To UBound(Montab3, 1)
    

        If IsError(Application.Match(CodesHisto(i), CodesModif, 0)) Then
        Call EcritLigne(FichierRef, Onglet, i, "Effacé")
 
            
        End If

    
  Next k

Merci d'avance pour 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
278
Réponses
4
Affichages
205
Réponses
3
Affichages
672
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…