[Résolu] Vérification dans une colonne de données déjà existante

wapadou

XLDnaute Nouveau
Bonjour,

J'ai crée une Usf qui permet d'ajouter des données dans une colonne et qui les tri.

Je souhaiterai qu'avant l'ajout de cette données il y ai une vérification pour savoir si elle existe déjà dans cette colonne.
Si c'est le cas, on bloque l'ajout.

Merci


Private Sub CommandButton3_Click()
ActiveWorkbook.Sheets("Lieu de stockage").Activate

Dim DernLigne As Long
DernLigne = Range("A" & Rows.Count).End(xlUp).Row 'on cherche la dernière cellule non vide
DernLigne = DernLigne + 1 'DernLigne+1 est donc la première celulle vide

Range("A" & DernLigne) = txt_Resultat

Selection.AutoFilter
Range("A1").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal

End Sub
 
Dernière édition:

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Vérification dans une colonne de données déjà existante

Bonjour wapadou,

avec ce code: ( l'ajout se trouve entre les lignes )
Code:
Private Sub CommandButton3_Click()
ActiveWorkbook.Sheets("Lieu de stockage").Activate
' -------------------------------------------------------------------
Dim cellule As Range
For Each cellule In Range("A1:A" & Range("A65536").End(xlUp).Row)
If cellule = txt_Resultat Then
MsgBox ("Cette donnée existe déjà")
Exit Sub
End If
Next cellule
' --------------------------------------------------------------------
Dim DernLigne As Long
DernLigne = Range("A" & Rows.Count).End(xlUp).Row 'on cherche la dernière cellule non vide
DernLigne = DernLigne + 1 'DernLigne+1 est donc la première celulle vide

Range("A" & DernLigne) = txt_Resultat

Selection.AutoFilter
Range("A1").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal

End Sub

à+
Philippe
 

Discussions similaires

Statistiques des forums

Discussions
312 330
Messages
2 087 337
Membres
103 524
dernier inscrit
Smile1813