concaténation sous condition

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

J

jerlef

Guest
Bonjour à tous,

Voilà mon problème :
J'ai une feuille excel avec trois colonnes. Pour être plus clair j'ai mis en pièce jointe un exemple.

Ce que je souhaite c'est une macro qui me permettrait d'arriver à cela :

1 test toto;titi;tata;truc

pour chaque ligne

Merci de votre aide !!! 😉
 

Pièces jointes

Re : concaténation sous condition

on me transmet ce fichier en l'état.
les colonnes A et B contiennent chacune une donnée et la colonne C contient plusieurs infos (n) en relation avec la colonne A et ainsi de suite pour A2, A3 ....

Je ne sais pas si je suis bien clair...?
 
Re : concaténation sous condition

J'ai pas le choix on me donne ce fichier en l'état
Il y a toujours une valeur dans la colonne A, une dans la B et n dans la C
et ainsi de suite

J'espère être clair...
Merci
 
Re : concaténation sous condition

J'ai pas le choix on me donne ce fichier en l'état
Il y a toujours une valeur dans la colonne A, une dans la B et n dans la C
et ainsi de suite et les colonnes A et B sont fusionnées proportionnellement au nomlbre de cellules correspondantes en colonne C

J'espère être clair...
Merci
 
Re : concaténation sous condition

Re


Si le fichier n'est pas trop volumineux

Tu peux essayer Copier/Collage Spécial/Transposé

Puis dans une cellule =C1&";"&C2&";"&C3 'etc etc

ensuite edition/copier/collage spécial/valeurs

Solution qui je le reconnais reste tres fastidieuse
 
Re : concaténation sous condition

Re


Ce qui me gene ce sont les cellules fusionnées

Je ne vois pas comment en VBA identifier la dernière valeur (ou dernière ligne)
en rapport avec la cellule fusionnée.

Peut-etre cette fonction personnalisée pourra t'aider
Code:
Public Function ConcSep(InCells As Range, Sep As String) As String
'SOURCE:http://www.chalouhis.com/XLBLOG/archives/2005/02/03/concatenate-with-separators/
 'exemple d'utilisation: =concsep(A1:A10;";")
    Dim OutStr As String
    Dim Cell As Variant
    
    OutStr = ""
    If InCells Is Nothing Then Exit Function
    On Error Resume Next
    For Each Cell In InCells
        OutStr = OutStr & Cell.Value & Sep
    Next Cell
    OutStr = Left(OutStr, Len(OutStr) - Len(Sep))
    ConcSep = OutStr
End Function

Cette macro fonctionne pour 1 ligne
Code:
Public Sub JoinCells()
'source:http://www.excelforum.com/showthread.php?threadid=505582
'auteur: bob stearns
Dim row_num As Range
Dim cell As Range
Dim result As String

With Selection
    For Each row_num In .Rows
      For Each cell In row_num.Cells
        result = result & cell.Value & " "
      Next cell
      If row_num.Row < .Rows(.Rows.Count).Row Then result = result & ";"
    Next row_num
  End With


With Cells(Selection.Row, Selection.Column + Selection.Columns.Count)
    .Value = result
    '.WrapText = True
End With
End Sub
 
Dernière édition:
- 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

Réponses
16
Affichages
504
Réponses
5
Affichages
538
Réponses
14
Affichages
886
Retour