Incrémenter une liste si

HelloDy

XLDnaute Junior
Bonjour le forum,

J'ai une liste de références en colonne A.
En inscrivant une ref en C1 (par exemple) j'aimerais qu'une fois que j'appuie sur entrée, cette ref s'insère en haut de la colonne A si elle n'y apparait pas déjà. Si elle y apparait déjà, j'aimerais avoir un message d'erreur (ou n'importe quoi d'autre) m'indiquant que cette ref est déjà présente dans la liste. Et qu'elle ne s'ajoute pas, du coup.

Je joins un fichier (bidon) si ça peut aider.

Merci beaucoup d'avance si quelqu'un peut se pencher sur mon problème.

Bizz

Elo
 

Fichiers joints

Lone-wolf

XLDnaute Barbatruc
Bonsoir Gerard :)

Voilà c'est rectifié.

@HelloDy: prends ce fichier corrigé. Pour la recherche, inscrit une référence, ensuite utilise TAB du clavier pour te déplacer en colonne D.

Pour une novelle référence, inscrit-la et tape sur ENTER.
 

Fichiers joints

Dernière édition:

HelloDy

XLDnaute Junior
Hello Lone-wolf, hello job75,

Merci la 2ème version fonctionne bien. Juste histoire d'être chiante, y'a pas du tout moyen qu'une simple pression sur entrée suffise, plutôt que TAB + entrée ? Peut-être j'en demande trop :p

Bonne soirée !
 

job75

XLDnaute Barbatruc
Bonjour HelloDy, Lone-wolf, le forum,

Je ne comprends pas Lone-wolf que tu utilises une macro SelectionChange !

Le code qui va bien :
Code:
Private Sub Worksheet_Change(ByVal R As Range)
If Intersect(R, [C1]) Is Nothing Or CStr([C1]) = "" Then Exit Sub
[C1].Select
If Application.CountIf([A:A], [C1]) Then _
    MsgBox "Cette référence existe déjà !", 48: [C1] = "": Exit Sub
[A2].Insert xlDown, CopyOrigin:=xlFormatFromRightOrBelow
[A2] = [C1]
End Sub
Bonne journée.
 

Discussions similaires


Haut Bas