Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
Option Explicit
Sub ListeSansDoublons()
Dim d1
Dim a(), c
Set d1 = CreateObject("Scripting.Dictionary")
a = Feuil1.[B2].CurrentRegion.Value
For Each c In a
d1(c) = ""
Next c
[K5].Resize(d1.Count, 1) = Application.Transpose(d1.Keys)
End Sub
Bonjour JHA,
Merci pour se travail, j'ai oublier une petite précision, il s'agit de paire donc soit :
1 2 ou 2 1 est la même paire.
Y a t'il moyen d'une formule pour corriger ?
Le principe :
Avec LIGNE(plage)+COLONNE(plage)/1000 on repère la position de toutes les cellules de la plage (sous la forme 5,003 pour la cellule C5) : la partie entière donne le n° de la ligne, la partie décimale, le n° de la colonne.
Avec SI(NB.SI(J$1:J1;plage)=0, on ne garde que les contenus des cellules pas encore cités dans le haut de la colonne J, au dessus de la cellule active.
Avec MAX(SI(NB.SI(J$1:J1;plage)=0;LIGNE(plage)+COLONNE(plage)/1000)), on ne garde que la référence de la cellule intéressante placée le plus bas et le plus à droite.
Avec ENT(MAX(SI(NB.SI(J$1:J1;plage)=0;LIGNE(plage)+COLONNE(plage)/1000)))-1 renvoie donc le n° de la ligne le plus grand contenant une cellule intéressante (-1 à la fin car la plage commence en ligne 2, et parcequ'on utilise INDEX(plage).
MOD(x ;1) renvoie la partie décimale du nombre x donc 1000*MOD(MAX(SI(NB.SI(J$1:J1;plage)=0;LIGNE(plage)+COLONNE(plage)/1000));1)-1 renvoie le n° de la colonne le plus grand contenant une cellule intéressante (-1 car la plage commence sur la colonne B et parcequ'on utilise INDEX(plage...)
Ensuite, on utilise INDEX(plage;n° de ligne choisi;n° de colonne choisi).
Dans ton cas, pour ce qui est de ne garder qu'une partie de la paire, et pas son inverse, c'est une autre histoire... Il faut modifier la partie SI(NB.SI(J$1:J1;plage)=0. A voir.
Ce site utilise des cookies pour personnaliser le contenu, adapter votre expérience et vous garder connecté si vous vous enregistrez.
En continuant à utiliser ce site, vous consentez à notre utilisation de cookies.