OVH Cloud OVH Cloud

Comment interdire la saisie d'un caractère

6 réponses
Avatar
Lulu la nantaise
Bonjour,
Je souhaite interdire la saisie d'un caractère dans une cellule "/" par
exemple.
Merci de votre aide
Lulu

6 réponses

Avatar
michdenis
Bonjour Lulu,

Essaie ceci en copiant la procédure dans le module feuille où l'action se déroule

Essaie maintenant de saisir "" dans la cellule A1
Tu pourras le typer... mais ne demeurera pas après la validation
de la cellule
'----------------------
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("A1").Address Then
Application.EnableEvents = False
Target.Value = WorksheetFunction.Substitute(Target, "", "")
Application.EnableEvents = True
End If
End Sub
'----------------------

Salutations!


"Lulu la nantaise" a écrit dans le message de news:
Bonjour,
Je souhaite interdire la saisie d'un caractère dans une cellule "/" par
exemple.
Merci de votre aide
Lulu
Avatar
anonymousA
Bonjour,

pour compléter la réponse de Mich Denis, au cas où !!!

Private Sub Worksheet_Change(ByVal Target As Range)

Application.EnableEvents = False

With Target
If .HasFormula Then
.Formula = WorksheetFunction.Substitute(.Formula, "/", "")
Else
.Value = WorksheetFunction.Substitute(.Item(1), "/", "")
End If
End With

Application.EnableEvents = True

End Sub

A+

Bonjour,
Je souhaite interdire la saisie d'un caractère dans une cellule "/" par
exemple.
Merci de votre aide
Lulu




Avatar
Lulu la nantaise
Merci messieurs,
Mais encore plus fort (si cela est possible), en fait le top du top c'est
que sur la cellule en question, la touche du clavier correspondant au
caractère soit inhibée et que dès qu'on la tape, cela fasse un "glong" par
ex.
Merci encore de votre aide,
Cordialement,
Lulu
"anonymousA" a écrit dans le message de
news:43a9bc6b$0$19708$
Bonjour,

pour compléter la réponse de Mich Denis, au cas où !!!

Private Sub Worksheet_Change(ByVal Target As Range)

Application.EnableEvents = False

With Target
If .HasFormula Then
.Formula = WorksheetFunction.Substitute(.Formula, "/", "")
Else
.Value = WorksheetFunction.Substitute(.Item(1), "/", "")
End If
End With

Application.EnableEvents = True

End Sub

A+

Bonjour,
Je souhaite interdire la saisie d'un caractère dans une cellule "/" par
exemple.
Merci de votre aide
Lulu






Avatar
anonymousA
La saisie des caractères dans les cellules ne peut être controlée en
temps réel.Il n'y a pas de propriété KeyPress pour une feuille.
Donc j'ai pas trop cherché , mais je ne vois pas de solution
évidente.

A+
Avatar
michdenis
L'usage d'un textbox d'un formulaire ou d'un contrôle textbox issu de
la boîte d'outils "contrôle", te permet d'obtenir ce que tu souhaites !

Est-ce que l'usage d'un formulaire est envisageable pour ton application ?


Salutations!



"Lulu la nantaise" a écrit dans le message de news:
Merci messieurs,
Mais encore plus fort (si cela est possible), en fait le top du top c'est
que sur la cellule en question, la touche du clavier correspondant au
caractère soit inhibée et que dès qu'on la tape, cela fasse un "glong" par
ex.
Merci encore de votre aide,
Cordialement,
Lulu
"anonymousA" a écrit dans le message de
news:43a9bc6b$0$19708$
Bonjour,

pour compléter la réponse de Mich Denis, au cas où !!!

Private Sub Worksheet_Change(ByVal Target As Range)

Application.EnableEvents = False

With Target
If .HasFormula Then
.Formula = WorksheetFunction.Substitute(.Formula, "/", "")
Else
.Value = WorksheetFunction.Substitute(.Item(1), "/", "")
End If
End With

Application.EnableEvents = True

End Sub

A+

Bonjour,
Je souhaite interdire la saisie d'un caractère dans une cellule "/" par
exemple.
Merci de votre aide
Lulu






Avatar
Lulu la nantaise
Non pas vraiment, enfin ça compliquerait ...
Je me débrouillerai avec ce que vous m'avez indiqué !
Merci beaucoup à tous deux.
Lulu

"michdenis" a écrit dans le message de
news:%23gx%
L'usage d'un textbox d'un formulaire ou d'un contrôle textbox issu de
la boîte d'outils "contrôle", te permet d'obtenir ce que tu souhaites !

Est-ce que l'usage d'un formulaire est envisageable pour ton application ?


Salutations!



"Lulu la nantaise" a écrit dans le message
de news:

Merci messieurs,
Mais encore plus fort (si cela est possible), en fait le top du top c'est
que sur la cellule en question, la touche du clavier correspondant au
caractère soit inhibée et que dès qu'on la tape, cela fasse un "glong" par
ex.
Merci encore de votre aide,
Cordialement,
Lulu
"anonymousA" a écrit dans le message de
news:43a9bc6b$0$19708$
Bonjour,

pour compléter la réponse de Mich Denis, au cas où !!!

Private Sub Worksheet_Change(ByVal Target As Range)

Application.EnableEvents = False

With Target
If .HasFormula Then
.Formula = WorksheetFunction.Substitute(.Formula, "/", "")
Else
.Value = WorksheetFunction.Substitute(.Item(1), "/", "")
End If
End With

Application.EnableEvents = True

End Sub

A+

Bonjour,
Je souhaite interdire la saisie d'un caractère dans une cellule "/"
par



exemple.
Merci de votre aide
Lulu