Bonjour,

Je dois créer un module excel permettant de supprimer les doublons sur deux colonnes afin de pouvoir ensuite extraire les deux colonnes sans doublons. Mon soucis repose sur la suppression des doublons. Je ne connais pas du tout le VBA et ai suivi les tutoriels d'un site en ligne pour apprendre les bases, j'espère que mon code ne piquera pas trop les yeux ...
A savoir : les valeurs de ma première colonne sont sur N et les valeurs de la seconde sont sur M, toutes mes valeurs commencent à la ligne 2 et peuvent aller jusqu'à 150 approximativement.

Voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub doublon()
 
i = 2
 
While i < 150
 
If Range("M2").Value = Range("N" & i).Value Then
 
Range("M2").Delete
Range("N" & i).Delete
i = 2
 
End If
 
Wend
 
End Sub
L'algorythme que j'ai voulu appliqué :

On teste la valeur de la case M2 avec toutes les valeurs des cases Ni (avec i commençant à 2), si on trouve une correspondance, il y a suppression des deux cases, sinon on passe à i+1. Vu que la valeur de la cellule M2 a été supprimée, une nouvelle valeur à tester a pris sa place donc réinitialisation de i à 2.
Le code fonctionne quand deux valeurs identiques sont l'une en face de l'autre, mais quand il faut commencer à chercher une valeur plus loin dans la colonne N, le module mouline dans le vide, je dois arrêter le process et le débogage pointe la ligne "End if".

Pour tester le code j'ai tapé quelques valeurs dans les deux colonnes :
10 10
12 12
15 5
22 105
5 100
7 15
Tout se passe bien pour les 10 et les 12, mais le programme bug sur le 15.

J'espère avoir bien résumé mon problème, merci d'avance pour vos réponses !!

P.S. : N'hésitez pas à me poser des questions, je reste disponible.