Eviter doublons

  • Initiateur de la discussion Alex
  • Date de début
A

Alex

Guest
Bonjour à tous

J’aimerais savoir comment tester en VBA si dans la colonne d’une feuille Excel il y a déjà une valeur ceci pour éviter d’insérer un doublon

Merci de votre aide
A+
 

Baside

XLDnaute Impliqué
Bonjour Alex le forum

Admettons que le doublon soit ajouté sur la première ligne vide de la colonne A

Avec ce code

Sheets('Feuil1').Columns('A').Sort Key1:=Range('A1'), Order1:=xlAscending, _
Header:=xlGuess
For X = Range('A65536').End(xlUp).Row + 1 To 2 Step -1
If Range('A' & X) = Range('A' & X - 1) Then
MsgBox 'Doublon Détruit : ' & Range('A' & X - 1).Value, vbCritical, _
'Doublon'
Range('A' & X).ClearContents
End If
Next

Dans un premier , le code met la colonne en ordre et dans un deuxième regarde, en partant du bas de la colonne, si deux cellules qui se superposent sont identiques

Baside
 

Moa

XLDnaute Occasionnel
Salut Baside, Salut Alex !

Je viens de te faire un exemple, mais entre temps notre Baside, m'a devancé.... ;)

Je te donne quand-même ce que j'ai fait !

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range('B:B')) Is Nothing Then
Dim valeur1 As Integer
Dim p As Integer
Dim Cell As Range
p = ActiveCell.Row - 2
valeur1 = ActiveCell.Offset(-1, 0).Value
For Each Cell In Range('B1:B' & p)
If Cell = valeur1 Then
MsgBox 'Cette valeur existe déjà dans la colonne', vbOKOnly
End If
Next
End If
End Sub


Exemple joint


Bonne journée à vous deux

@ +++

Moa [file name=SiDoublonAlex.zip size=8138]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/SiDoublonAlex.zip[/file]
 

Pièces jointes

  • SiDoublonAlex.zip
    7.9 KB · Affichages: 34

Discussions similaires

Réponses
4
Affichages
374
Réponses
22
Affichages
934
Réponses
10
Affichages
491

Statistiques des forums

Discussions
312 745
Messages
2 091 590
Membres
105 005
dernier inscrit
Marion43