OVH Cloud OVH Cloud

visual basic

3 réponses
Avatar
walter
bonjour :))

suite à la réponse de anonymousA que je remercie d'ailleurs!!
ce que tu me propose c'est du vba je pense, comment fait on pour appliquer
ce code à une feuille?
L'ideal c'est que lorsque je rentre un doublon qu'un message d'erreur
apparaisse du style " n° existant" et que je puisse identifier la ligne où le
n° existe déjà.
J'en demande beaucoup peut être non? :))

Merci à tous.

3 réponses

Avatar
anonymousA
Bonjour,

il faut que tu mettes ce code dans le module de feuille.

Attention, dans ce qui suit la recherche d'une occurence déjà existante
ne se fait que dans les cellules précédant la cellule où a été frappée
le N°.j'ai en effet supposé que l'on devait comparer avec une liste déjà
existante et allant de bas en haut et de gauche à droite.
Ceci dit , si ca ne va pas, il existe des variantes pour s'en sortir.

Private Sub Worksheet_Change(ByVal Target As Range)

If Application.WorksheetFunction.CountIf(Cells, Target) > 1 Then
MsgBox "N° existant en cellule " & Cells.Find(Target.Value, Target,
xlValues, xlWhole, , xlPrevious).Address(0,0)
Application.EnableEvents = False
Target.ClearContents
Target.Activate
Application.EnableEvents = True
End If

End Sub

A+

bonjour :))

suite à la réponse de anonymousA que je remercie d'ailleurs!!
ce que tu me propose c'est du vba je pense, comment fait on pour appliquer
ce code à une feuille?
L'ideal c'est que lorsque je rentre un doublon qu'un message d'erreur
apparaisse du style " n° existant" et que je puisse identifier la ligne où le
n° existe déjà.
J'en demande beaucoup peut être non? :))

Merci à tous.


Avatar
walter
Ca a l'air de correspondre à ce que je cherche, le seul problème c'est que je
ne sais pas me servir de Visual Basic Editor!!! :(((

merci c'est sympa quand même!!

walter.


Bonjour,

il faut que tu mettes ce code dans le module de feuille.

Attention, dans ce qui suit la recherche d'une occurence déjà existante
ne se fait que dans les cellules précédant la cellule où a été frappée
le N°.j'ai en effet supposé que l'on devait comparer avec une liste déjà
existante et allant de bas en haut et de gauche à droite.
Ceci dit , si ca ne va pas, il existe des variantes pour s'en sortir.

Private Sub Worksheet_Change(ByVal Target As Range)

If Application.WorksheetFunction.CountIf(Cells, Target) > 1 Then
MsgBox "N° existant en cellule " & Cells.Find(Target.Value, Target,
xlValues, xlWhole, , xlPrevious).Address(0,0)
Application.EnableEvents = False
Target.ClearContents
Target.Activate
Application.EnableEvents = True
End If

End Sub

A+

bonjour :))

suite à la réponse de anonymousA que je remercie d'ailleurs!!
ce que tu me propose c'est du vba je pense, comment fait on pour appliquer
ce code à une feuille?
L'ideal c'est que lorsque je rentre un doublon qu'un message d'erreur
apparaisse du style " n° existant" et que je puisse identifier la ligne où le
n° existe déjà.
J'en demande beaucoup peut être non? :))

Merci à tous.





Avatar
JLuc
Bonjour walter

Ca a l'air de correspondre à ce que je cherche, le seul problème c'est que je
ne sais pas me servir de Visual Basic Editor!!! :(((


Tu devrait essayer quand meme, c'est pas si dur :D
Tu va dans Outils->Macros->Visual Basic Editor
et tu te lance :-)
JLuc