Concatener si cellule double

Val -  
dlt-pan Messages postés 529 Statut Membre -
Bonjour,

je cherche depuis 1 heure un truc tout simple que j'ai déjà fais mais je ne me rappelle plus comment.

J'ai le tableau suivant

client---produit
1---A
1---B
2---A
2---C
3---A
3---B
3---C

et je voudrais

client---produit
1---A&B
2---A&C
3---A&B&C


Je pense qu'il y a moyen d'utiliser "simplement" une fonction CONCATENER SI


Merci d'avance de m'éclairer

Cordialement,

A voir également:

8 réponses

dlt-pan Messages postés 529 Statut Membre 67
 
bonjour
essaye ceci :
=SI(ET(A1=A2;A2=A3);(CONCATENER(B1;B2;B3));SI(A1=A2;(CONCATENER(B1;B2));""))
et recopie vers le bas de la liste


Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément.
0
Val
 
Bonjour,

ca marche nickel...

sauf si après j'ajoute par exemple

client---produit
4---A
4---B
4---C
4---D

il répond
4---ABC
4---BCD

alors que je voudrai
4---ABCD


Ca peut aller jusque 15 produits différents par clients.

Merci d'avance
0
dlt-pan Messages postés 529 Statut Membre 67
 
bonjour
je te propose cette petite macro que tu colles dans l'éditeur (ALT+F11) en sélectionnant l'onglet de ton fichier

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Mid(ActiveCell.Address, 2, 1) = "A" Then
cnt = 1
For i = 1 To Range("A65536").End(xlUp).Row
If Cells(i, 1) = Cells(i + 1, 1) Then
    Cells(cnt, 4) = Cells(cnt, 4) & Cells(i, 2)
        If Cells(i + 1, 1) <> Cells(i + 2, 1) Then
            Cells(cnt, 4) = Cells(cnt, 4) & Cells(i + 1, 2)
            Cells(cnt, 3) = Cells(i, 1)
            cnt = cnt + 1
        End If
End If
Next i
End If
End Sub



en A tes chiffres
en B tes lettres
en C le resumé de tes chiffres
en D la concatenation des lettres

pour la lancer doucleclic sur A1
Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément.
0
Val
 
Super !

Mais... :-)


j'ai 13 colonnes.

La 1ere c'est le numéro de client, la 2ème c'est son produit et les 11 autres c'est ses coordonnées (toujours les memes evidement)

donc il n'y a que la 2eme colonne qui change

Est-il également possible d'introduire un signe (par exemple "&") entre deux noms de produit ?


Merci d'avance
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Zoul67 Messages postés 2001 Statut Membre 149
 
Bonjour,

J'ai plutôt l'impression qu'un Tableau Croisé Dynamique te permettra d'afficher les données clairement et suivant tes attentes.

A+
0
dlt-pan Messages postés 529 Statut Membre 67
 
Bonjour
oui c'est possible mais il faut etre precis dans la demande.
dans quelle colonne veux tu copier la "concatenation" ?
faut il tenir compte des 11 autres colonnes ?

0
Val
 
en réalité, en colonne 1 j'ai le numéro de client
en 2 j'ai le produit qu'il a et dans les 11 autres j'ai ses coordonnées.

Ce qu'il me faudrait ce ne plus avoir qu'une seule ligne par client (tjs avec les 13 colonne), mais savoir quels sont tous les produits dont il dispose en colonne 2 (ou dans une nouvelle en n°14 si plus facile).


Peut etre que le concatener n'est pas la meilleure solution, mais je ne vois pas comment faire

Merci d'avance
0
Zoul67 Messages postés 2001 Statut Membre 149
 
Je ré-essaie : un Tableau Croisé Dynamique ?
0
Val
 
Comment ça marche ? :-)
0
Zoul67 Messages postés 2001 Statut Membre 149
 
Comment ça marche, tu peux le trouver sur ce site (https://www.commentcamarche.net/applis-sites/bureautique/1613-tableau-croise-dynamique-excel/ ou ailleurs, même en vidéo.

à quoi ça pourrait ressembler : https://www.cjoint.com/?DBypph4E0jW
0
dlt-pan Messages postés 529 Statut Membre 67
 
Bonjour Zoul67
pour ma culture, comment fais tu pour que tes données soient en ligne. Moi j'ai un decalage d'une ligne a chaque champ ?
merci

J'ai trouvé affichage sous forme tabulaire ....
0
dlt-pan Messages postés 529 Statut Membre 67
 
bonjour
dans ce cas tu crées un tableau croisé dynamique.
dans l'etiquettes de ligne tu mets toutes tes valeurs et en dernier le produit
0