Concatener sous condition

Bonjour,

J'aimerais savoir si il est possible de concaténer plusieurs cellules qui appartienne à la même personne.

Par exemple :

A B

P1 1

P2 1

P3 2

P1 3

P2 4

Le résultat voulu est le suivant

P1 1&3

P2 1&4

P3 3

Merci pour votre aide

Salut Alex, Salut le Forum !

En passant par VBA ?

Sub Concatener()
Dim w As Long, x As Long, y As Long, z As Long
Dim Txt As String, Personne As String
x = Range("A" & Rows.Count).End(xlUp).Row
For y = 2 To x
    If Cells(y, 3) = "" Then
        Personne = Cells(y, 1)
        Txt = Cells(y, 2)
        For z = y + 1 To x
            If Cells(z, 1) = Personne And Cells(z, 3) = "" Then
                Txt = Txt & "&" & Cells(z, 2)
                Cells(z, 3) = "x"
            End If
        Next
        w = Range("D" & Rows.Count).End(xlUp).Row + 1
        Cells(w, 4) = Personne
        Cells(w, 5) = Txt
    End If
Next
Columns(3).ClearContents
End Sub

Restant à dispo

C'est super en vba merci beaucoup !

Juste par curiosité sans vba ça donnerai quoi ?

Bonjour,

Sans VBA j'ai du mal à voir ce que ça donnerait, la fonction concatener n'aime pas trop quand on lui donne des formules matricielles...

Un exemple du souci:

15classeur1.xlsx (8.11 Ko)

Comme la fonction attend un seul texte, ton tableau donne une seule valeur, la première ligne du tableau...

Quand je dois concatener sous condition je donne du codage en VBA, je crains que ce ne soit pas possible sans...

Sa donnerai une formule matricielle plutôt compliqué !

Je m'avance pas trop sur ce sujet là parce que les formules matricielles et moi sa fais deux :p !

Par contre, j'avais fais le fichier ci-joint pour un autre membre du forum qui avais besoin de concaténer des valeurs en fonction du nom d'une Sté. Je l'ai adapté pour ton cas, mais sincèrement, la VBA est bien mieux x)

Restant à dispo !

Édit : Salut Ausecour

18pour-alex.xlsx (17.18 Ko)

Effectivement c'est mieux en vba !

Merci à vous.

Sa donnerai une formule matricielle plutôt compliqué !

Je m'avance pas trop sur ce sujet là parce que les formules matricielles et moi sa fais deux :p !

Par contre, j'avais fais le fichier ci-joint pour un autre membre du forum qui avais besoin de concaténer des valeurs en fonction du nom d'une Sté. Je l'ai adapté pour ton cas, mais sincèrement, la VBA est bien mieux x)

Restant à dispo !

Édit : Salut Ausecour

Salut Juice,

En effet c'est pas bien pratique comme peut le voir pagesalex, le VBA est plus adapté dans ce cas à mon avis

Ah moins que le besoin de concaténer ne soit pas son vrai besoin...

Attention tu n'avais pas mis le slash avec ta balise bold à la fin, ça me mettait tout mon texte en gras du coup :p

En effet c'est pas bien pratique comme peut le voir pagesalex, le VBA est plus adapté dans ce cas à mon avis

Bon bah si on est tous d'accord xD !

Attention tu n'avais pas mis le slash avec ta balise bold à la fin, ça me mettait tout mon texte en gras du coup :p

Comment sa :0 ?

En effet c'est pas bien pratique comme peut le voir pagesalex, le VBA est plus adapté dans ce cas à mon avis

Bon bah si on est tous d'accord xD !

Attention tu n'avais pas mis le slash avec ta balise bold à la fin, ça me mettait tout mon texte en gras du coup :p

Comment sa :0 ?

Eh bien comme tu le sais peut-être, pour mettre en gras du texte tu mets b entre crochets, et pour dire que tu arrêtes de mettre en gras, tu fais /b à la fin entre crochets aussi, si tu y fais bien ça donnera ça :

J'ai bien mis en gras

Sinon ça va donner ça :

[b]J'ai mal mis en gras car il manque le slash[b]

Et du coup ce texte se retrouve aussi en gras

Je te laisse citer mon message pour que tu puisses voir

En effet c'est pas bien pratique comme peut le voir pagesalex, le VBA est plus adapté dans ce cas à mon avis

Bon bah si on est tous d'accord xD !

Attention tu n'avais pas mis le slash avec ta balise bold à la fin, ça me mettait tout mon texte en gras du coup :p

Comment sa :0 ?

Eh bien comme tu le sais peut-être, pour mettre en gras du texte tu mets b entre crochets, et pour dire que tu arrêtes de mettre en gras, tu fais /b à la fin entre crochets aussi, si tu y fais bien ça donnera ça :

J'ai bien mis en gras

Sinon ça va donner ça :

J'ai mal mis en gras car il manque le slash

Et du coup ce texte se retrouve aussi en gras

Je te laisse citer mon message pour que tu puisses voir

Ouais je suis d'accord pour les balises du gras mais en faite c'est que j'ai pas compris où je t'avais citée et mis ton texte en gras :0

Attention tu n'avais pas mis le slash avec ta balise bold à la fin, ça me mettait tout mon texte en gras du coup :p

En tout cas excuse moi pour l'erreur, je ferais attention à mes balises :p !

Salut Juice,

Tu avais mis mon pseudo en gras en ne mettant pas le slash pour la balise de fin de la mise en forme, c'est ce qui avait mis mon texte en gras au premier envoi de mon message quand je t'ai cité

Tu peux vérifier au salut Ausecour dans ton message, il manque le slach

Ah oui, en effet :0

capture

Faut avoir l’œil xD

Rechercher des sujets similaires à "concatener condition"