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

Comparaison lignes - Précisions

5 réponses
Avatar
tip.tiptop
re bonjour
Pour commencer déjà merci à ceux qui on commencer à me donner quelques
éléments de réponse.
Mais ma question n'était peut être pas très précise.
Je la reformule.

Rappel de mon souci.

J'aimerai comparer des lignes entre 2 tableaux.
Ces 2 tableaux "Tab A et Tab B" sont dans des onglets différents mais dans
le même classeur.
Comment supprimer les lignes du tableau B déjà présentent dans le tableau A?

La comparaison doit être faite sur tous les champs des lignes comparées.
En effet il se peut que la différence entre 1 ligne du tableau A et une
autre du tableau B se trouve dans la 25 colonne.
La suppression doit être faite à l'unique condition que tous les champs
d'une ligne du tableau B soient identiques à tous les champs de la ligne du
tableau source (A).

Les lignes du tableau B ne sont pas forcement dans le même ordre que celles
du tableau B.
Il faut donc comparer la ligne 1 du tableau B avec toutes les lignes du
tableau A pour faire cette comparaison et ainsi de suite.

5 réponses

Avatar
AV
As-tu vraiment regardé et testé la proposition que j'ai faite ce matin à ta même
question ("Suppression des doublons"),dans le fil du 06/01/2006 à 22:59 ??

Hum...hum...je crois pas

AV
Avatar
JB
Bonjour,

http://cjoint.com/?bieRtNKbZy

JB
Avatar
JB
Bonjour

On n'utilise pas de colonne intermédiaire

http://cjoint.com/?bieRtNKbZy

JB
Avatar
JB
On n'utilise pas de colonne intermédiaire

http://cjoint.com/?bieRtNKbZy

JB
Avatar
JB
Bonjour,


PJhttp://cjoint.com/?bieBoEQr3S

On n'utilise pas de colonne intermédiaire

Sub SupDoublons()
Range("a2").Select
Do While ActiveCell <> ""
If Not IsError(Application.Match(ActiveCell,
Application.Index(Range("base"), , 1), 0)) _
And Not IsError(Application.Match(ActiveCell.Offset(0, 1),
Application.Index(Range("base"), , 2), 0)) Then
ActiveCell.EntireRow.Delete
Else
ActiveCell.Offset(1, 0).Select
End If
Loop
End Sub

MEFC
=SOMMEPROD((INDEX(Base;;1)=$A2)*(INDEX(Base;;2)=$B2)*(INDEX(Base;;1)< >"")*1)>0

Cordialement JB