Identifier doublons dans une même ligne excel
Vdpt
Messages postés
25
Date d'inscription
Statut
Membre
Dernière intervention
-
Le Pingou Messages postés 12249 Date d'inscription Statut Contributeur Dernière intervention -
Le Pingou Messages postés 12249 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
je travaille sur excel 2007.
J'ai un fichier comportant de nombreuses lignes et colonnes, assez long à traiter.
J'ai dans une 10aine de colonnes des infos qui reviennent parfois plusieurs fois, et j'aimerais identifier les doublons.
ex : Admettons que j'ai 10 colonnes en tout, avec en colonne A, C, E, G et I des lettres, et dans les colonnes B, D, F, H et J leurs montants associés.
Colonne A, ligne 1 j'ai "X"; colonne C, ligne 1, j'ai également "X", colonne G, lligne 1, j'ai "Y".
Les montants associés aux différentes lettres sont invariables. Ainsi X vaudra tjs 1 et Y deux par exemple.
Est il possible d'identifier rapidement les valeurs redondantes dans une même ligne?
L'idée serait en fait de dire que si dans la mm ligne deux valeurs identiques apparaissent, mon "total sur la ligne", qui serait une somme des différents montants, ne prenne en compte que les valeurs "uniques", qui n'apparaissent qu'une seule fois donc.
J'espère avoir été clair!
Merci!!
je travaille sur excel 2007.
J'ai un fichier comportant de nombreuses lignes et colonnes, assez long à traiter.
J'ai dans une 10aine de colonnes des infos qui reviennent parfois plusieurs fois, et j'aimerais identifier les doublons.
ex : Admettons que j'ai 10 colonnes en tout, avec en colonne A, C, E, G et I des lettres, et dans les colonnes B, D, F, H et J leurs montants associés.
Colonne A, ligne 1 j'ai "X"; colonne C, ligne 1, j'ai également "X", colonne G, lligne 1, j'ai "Y".
Les montants associés aux différentes lettres sont invariables. Ainsi X vaudra tjs 1 et Y deux par exemple.
Est il possible d'identifier rapidement les valeurs redondantes dans une même ligne?
L'idée serait en fait de dire que si dans la mm ligne deux valeurs identiques apparaissent, mon "total sur la ligne", qui serait une somme des différents montants, ne prenne en compte que les valeurs "uniques", qui n'apparaissent qu'une seule fois donc.
J'espère avoir été clair!
Merci!!
A voir également:
- Identifier doublons dans une même ligne excel
- Aller à la ligne excel - Guide
- Liste déroulante excel - Guide
- Déplacer une colonne excel - Guide
- Partager photos en ligne - Guide
- Word et excel gratuit - Guide
5 réponses
Bonjour,
Bonjour,
Juste au passage, dans votre cas d'exemple le total de la ligne 1 serait 3 .... Oui / Non ?
Question est-ce que chaque colonne (A, C, E, G et I] contiennent toujours une lettre ?
Salutations.
Le Pingou
Bonjour,
Juste au passage, dans votre cas d'exemple le total de la ligne 1 serait 3 .... Oui / Non ?
Question est-ce que chaque colonne (A, C, E, G et I] contiennent toujours une lettre ?
Salutations.
Le Pingou
Bonjour une formule quand même limitée, valable ici pour 5*2 colonnes:
=B1+SI(NB.SI(A1:C1;C1)>1;0;D1)+SI(NB.SI($A$1:E1;E1)>1;0;F1)+SI(NB.SI(A1:G1;G1)>1;0;H1)+SI(NB.SI(A1:I1;I1)>1;0;J1)
Sauf erreur, ,je n'ai pas tout testé
crdlmnt
=B1+SI(NB.SI(A1:C1;C1)>1;0;D1)+SI(NB.SI($A$1:E1;E1)>1;0;F1)+SI(NB.SI(A1:G1;G1)>1;0;H1)+SI(NB.SI(A1:I1;I1)>1;0;J1)
Sauf erreur, ,je n'ai pas tout testé
crdlmnt
Une autre façon de faire peut-être :
ajouter une colonne tout à droite "doublon".
Dans "doublon", à l'aide d'une formule (plutôt simple), tu mets oui si la ligne est un doublon et non sinon.
Ensuite tu calcules tes totaux avec des somme.si.ens (si doublon = non).
Ça ajoute une colonne (que tu peux masquer) et évite d'écrire une longue formule délicate.
En plus, par la suite, si ça t'intéresse, tu peux filtrer les doublons ou faire une mise en forme conditionnelle pour les faire remarquer.
Et si tu changes d'avis sur ce que tu veux faire, c'est plus facile à maintenir.
ajouter une colonne tout à droite "doublon".
Dans "doublon", à l'aide d'une formule (plutôt simple), tu mets oui si la ligne est un doublon et non sinon.
Ensuite tu calcules tes totaux avec des somme.si.ens (si doublon = non).
Ça ajoute une colonne (que tu peux masquer) et évite d'écrire une longue formule délicate.
En plus, par la suite, si ça t'intéresse, tu peux filtrer les doublons ou faire une mise en forme conditionnelle pour les faire remarquer.
Et si tu changes d'avis sur ce que tu veux faire, c'est plus facile à maintenir.
Bonjour,
Merci Vaucluse pour la solution (amicales salutations), dans le sens où il doit y avoir plus de 10 colonnes, je pense qu'il sera plus confortable avec une petite fonction personnalisée.
J'attends simplement la réponse du demandeur à mon message pour en faire plus.
Merci Vaucluse pour la solution (amicales salutations), dans le sens où il doit y avoir plus de 10 colonnes, je pense qu'il sera plus confortable avec une petite fonction personnalisée.
J'attends simplement la réponse du demandeur à mon message pour en faire plus.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Ma proposition, fonction personnalisée à mettre dans un module du classeur et selon votre exemple, 10 colonnes (A1.....J1) le totale de la ligne avec la formule en [M1] : =totLigsansdouble(A1:J1)
Ensuite vous la tirer sur le nombre des lignes nécessaire.
La fonction :
Ma proposition, fonction personnalisée à mettre dans un module du classeur et selon votre exemple, 10 colonnes (A1.....J1) le totale de la ligne avec la formule en [M1] : =totLigsansdouble(A1:J1)
Ensuite vous la tirer sur le nombre des lignes nécessaire.
La fonction :
Function totLigsansdouble(plage As Range)
Dim nbcol As Integer, nuli As Integer, c As Integer
Dim totli As Double
nbcol = plage.Count: nuli = plage.Row
Set mondico = CreateObject("Scripting.Dictionary")
For c = 1 To nbcol Step 2
If Not mondico.exists(Cells(nuli, c).Value) Then
mondico(Cells(nuli, c).Value) = ""
totlig = totlig + Cells(nuli, c).Offset(0, 1)
End If
Next c
totLigsansdouble = totlig
Set mondico = Nothing
End Function