Exclusion nombres identiques

Résolu/Fermé
superpoulet - 24 mai 2011 à 20:00
 superpoulet - 25 mai 2011 à 20:43
Bonjour à tous,

Imaginons une suite de même nombres réparti sur 2 colonnes A et B sauf que sur la colonne B il y ait 2 nombres de +

Je voudrais exclure tous les mêmes nombres A & B et me sortir juste les 2 supplémentaires 00 et 11 en l'occurrence sur l'exemple ci dessous.

Exemple :

A B

22 99
33 88
44 77
55 66
66 55
77 44
88 33
99 22
11
00

Merci pour vos réponses

3 réponses

ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
Modifié par ccm81 le 24/05/2011 à 21:26
bonsoir

- sans macro, on construit une plage identique a la plage Ax:By en Cx:Dy
C1=SI(NB.SI($A$1:$B$12;A1)=1;A1;"") à tirer dans toute la plage
pour copier les "uniques" de AxBy dans CxDy

- avec une macro a placer dans un module (alt-F11 pour accéder à l'éditeur) pour un affichage des "uniques" en colonne E (ici)

Option Explicit   
Option Base 1   

Const lideb = 1   
Const co1 = "A"   
Const co2 = "B"   
Const cores = "E"   

Public Sub extraction()   
Dim lifinA As Long, lifinB As Long, li As Long, lili As Long, liD As Long   
Dim n As Long   
Dim T   
Dim trouve As Boolean   
  lifinA = Range(co1 & 65536).End(xlUp).Row   
  lifinB = Range(co2 & 65536).End(xlUp).Row   
  liD = 0   
  n = lifinA + lifinB - 2 * lideb + 2   
  ReDim T(1 To n)   
  For li = lideb To lifinA   
    T(li) = Range(co1 & lideb + li - 1)   
  Next li   
  For li = lideb To lifinB   
    T(li + lideb + lifinA - 1) = Range(co2 & lideb + li - 1)   
  Next li   
  For li = 1 To n   
    trouve = False   
    lili = 0   
    Do   
      lili = lili + 1   
      If li <> lili And T(lili) = T(li) Then: trouve = True   
    Loop Until lili = n Or trouve   
    If Not trouve Then   
      liD = liD + 1   
      Range(cores & liD).Value = T(li)   
    End If   
  Next li   
End Sub

RQ. le code suppose qu'en colonnes A et B ne figurent que la liste à traiter
- il y a certainement d'autres solutions
bonne suite
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
25 mai 2011 à 12:16
Bonjour

par formule matricielle sans cellules intermédiaires

https://www.cjoint.com/?3EzmpDTb9jw
0
superpoulet
25 mai 2011 à 20:43
Merci beaucoup pour vos réponses.
0