Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBa : marquer les doublons

12 réponses
Avatar
Le Nordiste
Bonjour,


J'ai un tableau :
dans la colonne A des r=E9f=E9rences : AAA1, AAA2, AA3, =85
dans la colonne B j'ai des intitul=E9s PRODUIT1, PRODUIT2,=85,
dans la colonne C j'ai des dates.

Pour une r=E9f=E9rence, je peux avoir de 1 =E0 n produit
Pour une r=E9f=E9rence et un produit je peux avoir de 1 =E0 n dates.

Je d=E9sire marquer en colonne D quand pour une m=EAme r=E9f=E9rence et un
m=EAme produit j'ai plus de une date.

col_A | col_B col_C col_D

AAA1 PRO1 01/02/08 =3D>=E0 distinguer
AAA1 PRO1 01/01/08
AAA1 PRO2 01/01/08
AAA1 PRO1 01/02/08 =3D> =E0 distinguer
AAA2 PRO1 01/01/08
AAA2 PRO2 01/01/08
AAA3 PRO1 01/02/08
=85

Merci pour votre aide.

10 réponses

1 2
Avatar
Ellimac
Bonjour,

Avec une mise en forme conditionnelle :
=SOMMEPROD(($A$1:$A$7=$A1)*($B$1:$B$7=$B1)*($C$1:$C$7=$C1))

Camille

"Le Nordiste" a écrit dans le message de
news:
Bonjour,


J'ai un tableau :
dans la colonne A des références : AAA1, AAA2, AA3, Â…
dans la colonne B j'ai des intitulés PRODUIT1, PRODUIT2,Â…,
dans la colonne C j'ai des dates.

Pour une référence, je peux avoir de 1 à n produit
Pour une référence et un produit je peux avoir de 1 à n dates.

Je désire marquer en colonne D quand pour une même référence et un
même produit j'ai plus de une date.

col_A | col_B col_C col_D

AAA1 PRO1 01/02/08 =>à distinguer
AAA1 PRO1 01/01/08
AAA1 PRO2 01/01/08
AAA1 PRO1 01/02/08 => à distinguer
AAA2 PRO1 01/01/08
AAA2 PRO2 01/01/08
AAA3 PRO1 01/02/08
Â…

Merci pour votre aide.
Avatar
Le Nordiste
Avec une mise en forme conditionnelle :
=SOMMEPROD(($A$1:$A$7=$A1)*($B$1:$B$7=$B1)*($C$1:$C$7=$C1))



Mais ma première occurence de doublon, n'est pas systématiquement sur
ma ligne 1!
mon fichier actuel fait plus de 85 000 lignes et 16 000 valeurs
différentes dans la colonne A .

je m'oriente plus vers une solution VBa, mais tout est bon à voir.

merci

Avatar
Tatanka
Bonjour,

Peut-être ainsi :
En supposant que les données de ton échantillon soient en A1:C7 :
Sélectionne D1:D7

Mise en forme conditionnelle :
La formule est :
=SOMMEPROD(($A$1:$A$7¡)*($B$1:$B$7±)*($C$1:$C$7Á))>1
Motif : la couleur de ton choix.

Serge

"Le Nordiste" a écrit dans le message de news:

Bonjour,


J'ai un tableau :
dans la colonne A des références : AAA1, AAA2, AA3, Â…
dans la colonne B j'ai des intitulés PRODUIT1, PRODUIT2,Â…,
dans la colonne C j'ai des dates.

Pour une référence, je peux avoir de 1 à n produit
Pour une référence et un produit je peux avoir de 1 à n dates.

Je désire marquer en colonne D quand pour une même référence et un
même produit j'ai plus de une date.

col_A | col_B col_C col_D

AAA1 PRO1 01/02/08 =>à distinguer
AAA1 PRO1 01/01/08
AAA1 PRO2 01/01/08
AAA1 PRO1 01/02/08 => à distinguer
AAA2 PRO1 01/01/08
AAA2 PRO2 01/01/08
AAA3 PRO1 01/02/08
Â…

Merci pour votre aide.
Avatar
Tatanka
Et pour éviter que des « marques » non bienvenues apparaissent si
une ou plusieurs cellules des colonnes A, B et C sont vides :

=SOMMEPROD(($A$1:$A$7¡)*($B$1:$B$7±)*($C$1:$C$7Á)*(A1<>"")*(B1<>"")*(C1<>""))>1

Serge

"Tatanka" a écrit dans le message de news:
Bonjour,

Peut-être ainsi :
En supposant que les données de ton échantillon soient en A1:C7 :
Sélectionne D1:D7

Mise en forme conditionnelle :
La formule est :
=SOMMEPROD(($A$1:$A$7¡)*($B$1:$B$7±)*($C$1:$C$7Á))>1
Motif : la couleur de ton choix.

Serge

"Le Nordiste" a écrit dans le message de news:

Bonjour,


J'ai un tableau :
dans la colonne A des références : AAA1, AAA2, AA3, .
dans la colonne B j'ai des intitulés PRODUIT1, PRODUIT2,.,
dans la colonne C j'ai des dates.

Pour une référence, je peux avoir de 1 à n produit
Pour une référence et un produit je peux avoir de 1 à n dates.

Je désire marquer en colonne D quand pour une même référence et un
même produit j'ai plus de une date.

col_A | col_B col_C col_D

AAA1 PRO1 01/02/08 =>à distinguer
AAA1 PRO1 01/01/08
AAA1 PRO2 01/01/08
AAA1 PRO1 01/02/08 => à distinguer
AAA2 PRO1 01/01/08
AAA2 PRO2 01/01/08
AAA3 PRO1 01/02/08
.

Merci pour votre aide.



Avatar
Misange
As tu essayé les solutions proposées ? Ce n'est pas parce qu'il y a une
référence à la cellule A1 que seuls les doublons de la cellule A1 seront
repérés !

Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net

Avec une mise en forme conditionnelle :
=SOMMEPROD(($A$1:$A$7=$A1)*($B$1:$B$7=$B1)*($C$1:$C$7=$C1))



Mais ma première occurence de doublon, n'est pas systématiquement sur
ma ligne 1!
mon fichier actuel fait plus de 85 000 lignes et 16 000 valeurs
différentes dans la colonne A .

je m'oriente plus vers une solution VBa, mais tout est bon à voir.

merci



Avatar
Le Nordiste
=SOMMEPROD(($A$1:$A$7¡)*($B$1:$B$7±)*($C$1:$C
$7Á)*(A1<>"")*(B1<>"")*(­C1<>""))>1


je viens d'essayer cette formule, cela répond à mon besoin.

Mais je suis sur EXCEL2007 et le formatage conditionnel n'est pas des
plus rapides sur des fichiers de 85000 lignes, ni l'interface de
dialogue.
L'éditeur de formule est aussi M. "ouisique" que la version
précédente : impossibilité d'utiliser les fléches pour se déplacer
dans la formule.
Avatar
Misange
C'est sur que 80000 lignes c'est un paquet quand on utilise des formules
matricielles ou des sommeprod (ce qui revient au même à part le risque
de se fouler les doigts en faisant des ctrl maj enter périlleux avec
double salto)
certains te diraient ici que ca devient un boulot pour access :-) 80000
lignes !
Par macro, cela prendra aussi du temps et en général, les fonctions
intégrées d'excel sont bien plus rapides que des macros. De toutes
façons, tu ne coupera pas au fait qu'à chaque entrée, il faut balayer
toute la plage pour chercher des doublons, sauf si par exemple, la
structure de tes données te permet de restreindre la zone de recherche.

Tu trouveras des solutions VBA ici
http://www.excelabo.net/excel/comparerreperer.php#doublonscolori%E9s


Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net

=SOMMEPROD(($A$1:$A$7¡)*($B$1:$B$7±)*($C$1:$C
$7Á)*(A1<>"")*(B1<>"")*(­C1<>""))>1


je viens d'essayer cette formule, cela répond à mon besoin.

Mais je suis sur EXCEL2007 et le formatage conditionnel n'est pas des
plus rapides sur des fichiers de 85000 lignes, ni l'interface de
dialogue.
L'éditeur de formule est aussi M. "ouisique" que la version
précédente : impossibilité d'utiliser les fléches pour se déplacer
dans la formule.



Avatar
Le Nordiste
=SOMMEPROD(($A$1:$A$7¡)*($B$1:$B$7±)*($C$1:$C
$7Á)*(A1<>"")*(B1<>"")*(­C1<>""))>1


En fait je me suis emballé aprés test sur un échantillon restreint ;
cette formule ne va pas du tout.

Les données ne sont pas des valeurs numériques mais alphanumériques
Avatar
Modeste
Bonsour® Le Nordiste avec ferveur ;o))) vous nous disiez :

L'éditeur de formule est aussi M. "ouisique" que la version
précédente : impossibilité d'utiliser les fléches pour se déplacer
dans la formule.


;o)))
il suffit de faire F2 avant l'utilisation des fléches !!!



--
--
@+
;o)))

Avatar
Le Nordiste
L'éditeur de formule est aussi M.  "ouisique" que la version
précédente : impossibilité d'utiliser les fléches pour se dépl acer
dans la formule.




il suffit de faire F2 avant l'utilisation des fléches !!!


Je teste de suite cette astuce.


1 2