Bonjour,
j'ai penser à faire quelque chose qui peut m'eviter de saisir par erreure
une 2eme fois le meme nombre dans une liste de la meme colone, mais j'ai
rien trouver (je ne parle pas des regles de validation de donnée)
Merci pour l'aide.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
AV
Pour empécher la saisie de doublon dans la colonne A Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If Intersect(zz, [A:A]) Is Nothing Or zz = "" Then Exit Sub Set C = [A:A].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True SendKeys "{F2}+{HOME}" End If End Sub
AV
Pour empécher la saisie de doublon dans la colonne A
Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Excel.Range)
If Selection.Count > 1 Then Exit Sub
If Intersect(zz, [A:A]) Is Nothing Or zz = "" Then Exit Sub
Set C = [A:A].Find(zz(1), zz(1))
If C.Address <> zz(1).Address Then
MsgBox "Valeur déjà présente en " _
& C.Address, vbCritical, "Doublon !"
Application.EnableEvents = False
zz = "": zz.Select
Application.EnableEvents = True
SendKeys "{F2}+{HOME}"
End If
End Sub
Pour empécher la saisie de doublon dans la colonne A Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If Intersect(zz, [A:A]) Is Nothing Or zz = "" Then Exit Sub Set C = [A:A].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True SendKeys "{F2}+{HOME}" End If End Sub
AV
azza
Merci AV ca marche je vais essayer decomprendre tout ça!!.
"AV" a écrit dans le message de news:
Pour empécher la saisie de doublon dans la colonne A Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If Intersect(zz, [A:A]) Is Nothing Or zz = "" Then Exit Sub Set C = [A:A].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True SendKeys "{F2}+{HOME}" End If End Sub
AV
Merci AV ca marche
je vais essayer decomprendre tout ça!!.
"AV" <alain.vallon@wanadoo.fr> a écrit dans le message de news:
uM6irSefEHA.2848@TK2MSFTNGP10.phx.gbl...
Pour empécher la saisie de doublon dans la colonne A
Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Excel.Range)
If Selection.Count > 1 Then Exit Sub
If Intersect(zz, [A:A]) Is Nothing Or zz = "" Then Exit Sub
Set C = [A:A].Find(zz(1), zz(1))
If C.Address <> zz(1).Address Then
MsgBox "Valeur déjà présente en " _
& C.Address, vbCritical, "Doublon !"
Application.EnableEvents = False
zz = "": zz.Select
Application.EnableEvents = True
SendKeys "{F2}+{HOME}"
End If
End Sub
Merci AV ca marche je vais essayer decomprendre tout ça!!.
"AV" a écrit dans le message de news:
Pour empécher la saisie de doublon dans la colonne A Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If Intersect(zz, [A:A]) Is Nothing Or zz = "" Then Exit Sub Set C = [A:A].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True SendKeys "{F2}+{HOME}" End If End Sub
AV
michdenis
Bonjour Alain,
A ) Pour être un peu pointilleux ... suppose que dans la colonne A:A , il y a une formule aussi simple que : µ , Es-tu certain que ta procédure va réussir à identifier le doublon si l'usager entre une valeur identique à la valeur contenue en B5 dans une autre cellule de la colonne A:A ?
B ) Si le paramètre de la fonction "Find" LookAt:=XlWhole , je suppose que la procédure pourrait toujours trouvé un doublon qui est en fait seulement une partie du contenue de la cellule correspondant au paramètre LookAt:=XlPart ... Non ?
C'était seulement quelques chinoiseries du lundi matin !
;-))
Bonne semaine,
Salutations!
"AV" a écrit dans le message de news: Pour empécher la saisie de doublon dans la colonne A Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If Intersect(zz, [A:A]) Is Nothing Or zz = "" Then Exit Sub Set C = [A:A].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True SendKeys "{F2}+{HOME}" End If End Sub
AV
Bonjour Alain,
A ) Pour être un peu pointilleux ... suppose que dans la colonne A:A , il y a une formule aussi simple que : µ , Es-tu
certain que ta procédure va réussir à identifier le doublon si l'usager entre une valeur identique à la valeur contenue en B5
dans une autre cellule de la colonne A:A ?
B ) Si le paramètre de la fonction "Find" LookAt:=XlWhole , je suppose que la procédure pourrait toujours trouvé un doublon
qui est en fait seulement une partie du contenue de la cellule correspondant au paramètre LookAt:=XlPart ... Non ?
C'était seulement quelques chinoiseries du lundi matin !
;-))
Bonne semaine,
Salutations!
"AV" <alain.vallon@wanadoo.fr> a écrit dans le message de news:uM6irSefEHA.2848@TK2MSFTNGP10.phx.gbl...
Pour empécher la saisie de doublon dans la colonne A
Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Excel.Range)
If Selection.Count > 1 Then Exit Sub
If Intersect(zz, [A:A]) Is Nothing Or zz = "" Then Exit Sub
Set C = [A:A].Find(zz(1), zz(1))
If C.Address <> zz(1).Address Then
MsgBox "Valeur déjà présente en " _
& C.Address, vbCritical, "Doublon !"
Application.EnableEvents = False
zz = "": zz.Select
Application.EnableEvents = True
SendKeys "{F2}+{HOME}"
End If
End Sub
A ) Pour être un peu pointilleux ... suppose que dans la colonne A:A , il y a une formule aussi simple que : µ , Es-tu certain que ta procédure va réussir à identifier le doublon si l'usager entre une valeur identique à la valeur contenue en B5 dans une autre cellule de la colonne A:A ?
B ) Si le paramètre de la fonction "Find" LookAt:=XlWhole , je suppose que la procédure pourrait toujours trouvé un doublon qui est en fait seulement une partie du contenue de la cellule correspondant au paramètre LookAt:=XlPart ... Non ?
C'était seulement quelques chinoiseries du lundi matin !
;-))
Bonne semaine,
Salutations!
"AV" a écrit dans le message de news: Pour empécher la saisie de doublon dans la colonne A Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If Intersect(zz, [A:A]) Is Nothing Or zz = "" Then Exit Sub Set C = [A:A].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True SendKeys "{F2}+{HOME}" End If End Sub
AV
AV
A ) Pour être un peu pointilleux ... suppose que dans la colonne A:A , il y a une formule aussi simple que : µ , Es-tu
certain que ta procédure va réussir à identifier le doublon si l'usager entre une valeur identique à la valeur contenue en B5
dans une autre cellule de la colonne A:A ?
Je suis "moyennenment" d'accord car lorsqu'il s'agit de "peut m'eviter de saisir par erreure une 2eme fois le meme nombre", j'exclue d'autorité toute saisie autre qu'une constante !
B ) Si le paramètre de la fonction "Find" LookAt:=XlWhole , je suppose que la procédure pourrait toujours trouvé un doublon
qui est en fait seulement une partie du contenue de la cellule correspondant au paramètre LookAt:=XlPart ... Non ?
Là, je suis pleinement d'accord ! Donc l'ajouter ou mieux (?) laisser tomber le "find" et utiliser match
C'était seulement quelques chinoiseries du lundi matin ! Mais non, mais non, je sais bien que "ton moteur de recherche" à une faiblesse
(justifiée) pour les 'find' ! ;-) AV
A ) Pour être un peu pointilleux ... suppose que dans la colonne A:A , il y a
une formule aussi simple que : µ , Es-tu
certain que ta procédure va réussir à identifier le doublon si l'usager entre
une valeur identique à la valeur contenue en B5
dans une autre cellule de la colonne A:A ?
Je suis "moyennenment" d'accord car lorsqu'il s'agit de "peut m'eviter de saisir
par erreure une 2eme fois le meme nombre", j'exclue d'autorité toute saisie
autre qu'une constante !
B ) Si le paramètre de la fonction "Find" LookAt:=XlWhole , je suppose que la
procédure pourrait toujours trouvé un doublon
qui est en fait seulement une partie du contenue de la cellule correspondant
au paramètre LookAt:=XlPart ... Non ?
Là, je suis pleinement d'accord !
Donc l'ajouter ou mieux (?) laisser tomber le "find" et utiliser match
C'était seulement quelques chinoiseries du lundi matin !
Mais non, mais non, je sais bien que "ton moteur de recherche" à une faiblesse
A ) Pour être un peu pointilleux ... suppose que dans la colonne A:A , il y a une formule aussi simple que : µ , Es-tu
certain que ta procédure va réussir à identifier le doublon si l'usager entre une valeur identique à la valeur contenue en B5
dans une autre cellule de la colonne A:A ?
Je suis "moyennenment" d'accord car lorsqu'il s'agit de "peut m'eviter de saisir par erreure une 2eme fois le meme nombre", j'exclue d'autorité toute saisie autre qu'une constante !
B ) Si le paramètre de la fonction "Find" LookAt:=XlWhole , je suppose que la procédure pourrait toujours trouvé un doublon
qui est en fait seulement une partie du contenue de la cellule correspondant au paramètre LookAt:=XlPart ... Non ?
Là, je suis pleinement d'accord ! Donc l'ajouter ou mieux (?) laisser tomber le "find" et utiliser match
C'était seulement quelques chinoiseries du lundi matin ! Mais non, mais non, je sais bien que "ton moteur de recherche" à une faiblesse
(justifiée) pour les 'find' ! ;-) AV
michdenis
Bonjour AV,
Je suis "moyennenment" d'accord car lorsqu'il s'agit de "peut m'eviter de saisir par erreure une 2eme fois le meme nombre", j'exclue d'autorité toute saisie autre qu'une constante !
Bien qu'il saisisse ses données à la mimine... rien n'indique qu'il n'y a pas au moins une formule en colonne A:A susceptible de venir jouer les trouble-fêtes . M'enfin !
"ton moteur de recherche" à une faiblesse(justifiée) pour les 'find' !
C'était la dernière fois ... promis !
;-))
Salutations!
Bonjour AV,
Je suis "moyennenment" d'accord car lorsqu'il s'agit de "peut m'eviter de saisir
par erreure une 2eme fois le meme nombre", j'exclue d'autorité toute saisie
autre qu'une constante !
Bien qu'il saisisse ses données à la mimine... rien n'indique qu'il n'y a pas au moins une formule en colonne A:A susceptible
de venir jouer les trouble-fêtes . M'enfin !
"ton moteur de recherche" à une faiblesse(justifiée) pour les 'find' !
Je suis "moyennenment" d'accord car lorsqu'il s'agit de "peut m'eviter de saisir par erreure une 2eme fois le meme nombre", j'exclue d'autorité toute saisie autre qu'une constante !
Bien qu'il saisisse ses données à la mimine... rien n'indique qu'il n'y a pas au moins une formule en colonne A:A susceptible de venir jouer les trouble-fêtes . M'enfin !
"ton moteur de recherche" à une faiblesse(justifiée) pour les 'find' !
C'était la dernière fois ... promis !
;-))
Salutations!
AV
C'était la dernière fois ... promis !
Ah non, surtout pas, car ça me permet de mettre à jour mes archives ! ;-) AV
C'était la dernière fois ... promis !
Ah non, surtout pas, car ça me permet de mettre à jour mes archives !
;-)
AV
Ah non, surtout pas, car ça me permet de mettre à jour mes archives ! ;-) AV
michdenis
re Bonjour AV,
Donc l'ajouter ou mieux (?) laisser tomber le "find" et utiliser match
Le hic avec Match, c'est si l'usager modifier une donnée dans une cellule précédente la fin de la colonne, si le doublon se trouve après la cellule corrigée, la boîte de message fera affichée l'adresse de la cellule qui vient d'être corrigée et non pas la cellule où l'on retrouve le doublon ! M'enfin ...!
Dans ce cas, il me semble que la méthode "Find" soit la meilleure ... si elle a tous ses paramètres !
;-)
Salutations!
"AV" a écrit dans le message de news:e6%
A ) Pour être un peu pointilleux ... suppose que dans la colonne A:A , il y a une formule aussi simple que : µ , Es-tu
certain que ta procédure va réussir à identifier le doublon si l'usager entre une valeur identique à la valeur contenue en B5
dans une autre cellule de la colonne A:A ?
Je suis "moyennenment" d'accord car lorsqu'il s'agit de "peut m'eviter de saisir par erreure une 2eme fois le meme nombre", j'exclue d'autorité toute saisie autre qu'une constante !
B ) Si le paramètre de la fonction "Find" LookAt:=XlWhole , je suppose que la procédure pourrait toujours trouvé un doublon
qui est en fait seulement une partie du contenue de la cellule correspondant au paramètre LookAt:=XlPart ... Non ?
Là, je suis pleinement d'accord ! Donc l'ajouter ou mieux (?) laisser tomber le "find" et utiliser match
C'était seulement quelques chinoiseries du lundi matin ! Mais non, mais non, je sais bien que "ton moteur de recherche" à une faiblesse
(justifiée) pour les 'find' ! ;-) AV
re Bonjour AV,
Donc l'ajouter ou mieux (?) laisser tomber le "find" et utiliser match
Le hic avec Match, c'est si l'usager modifier une donnée dans une cellule précédente la fin de la colonne, si le doublon se
trouve après la cellule corrigée, la boîte de message fera affichée l'adresse de la cellule qui vient d'être corrigée et non
pas la cellule où l'on retrouve le doublon ! M'enfin ...!
Dans ce cas, il me semble que la méthode "Find" soit la meilleure ... si elle a tous ses paramètres !
;-)
Salutations!
"AV" <alain.vallon@wanadoo.fr> a écrit dans le message de news:e6%23JR9gfEHA.1424@tk2msftngp13.phx.gbl...
A ) Pour être un peu pointilleux ... suppose que dans la colonne A:A , il y a
une formule aussi simple que : µ , Es-tu
certain que ta procédure va réussir à identifier le doublon si l'usager entre
une valeur identique à la valeur contenue en B5
dans une autre cellule de la colonne A:A ?
Je suis "moyennenment" d'accord car lorsqu'il s'agit de "peut m'eviter de saisir
par erreure une 2eme fois le meme nombre", j'exclue d'autorité toute saisie
autre qu'une constante !
B ) Si le paramètre de la fonction "Find" LookAt:=XlWhole , je suppose que la
procédure pourrait toujours trouvé un doublon
qui est en fait seulement une partie du contenue de la cellule correspondant
au paramètre LookAt:=XlPart ... Non ?
Là, je suis pleinement d'accord !
Donc l'ajouter ou mieux (?) laisser tomber le "find" et utiliser match
C'était seulement quelques chinoiseries du lundi matin !
Mais non, mais non, je sais bien que "ton moteur de recherche" à une faiblesse
Donc l'ajouter ou mieux (?) laisser tomber le "find" et utiliser match
Le hic avec Match, c'est si l'usager modifier une donnée dans une cellule précédente la fin de la colonne, si le doublon se trouve après la cellule corrigée, la boîte de message fera affichée l'adresse de la cellule qui vient d'être corrigée et non pas la cellule où l'on retrouve le doublon ! M'enfin ...!
Dans ce cas, il me semble que la méthode "Find" soit la meilleure ... si elle a tous ses paramètres !
;-)
Salutations!
"AV" a écrit dans le message de news:e6%
A ) Pour être un peu pointilleux ... suppose que dans la colonne A:A , il y a une formule aussi simple que : µ , Es-tu
certain que ta procédure va réussir à identifier le doublon si l'usager entre une valeur identique à la valeur contenue en B5
dans une autre cellule de la colonne A:A ?
Je suis "moyennenment" d'accord car lorsqu'il s'agit de "peut m'eviter de saisir par erreure une 2eme fois le meme nombre", j'exclue d'autorité toute saisie autre qu'une constante !
B ) Si le paramètre de la fonction "Find" LookAt:=XlWhole , je suppose que la procédure pourrait toujours trouvé un doublon
qui est en fait seulement une partie du contenue de la cellule correspondant au paramètre LookAt:=XlPart ... Non ?
Là, je suis pleinement d'accord ! Donc l'ajouter ou mieux (?) laisser tomber le "find" et utiliser match
C'était seulement quelques chinoiseries du lundi matin ! Mais non, mais non, je sais bien que "ton moteur de recherche" à une faiblesse