je code depuis peu en VBA, et je bloque depuis quelques jours sur une
fonction. J'utilise une fonction qui me permet de détecter quelle touche a
été taper afin empêcher la saisie de certains caractères, or j'ai une 10aine
de champs de saisie sur mon USF et suis donc obligé de retaper le code pour
chaque champ. Existe t'il une solution pour transformer mon code en macro
externe à l'USF afin de m'en resservir a chaque fois que j'en ai besoin, que
ce soit sur le même USF ou avec un autre du même projet ?
Private Sub CODE_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'--- Vérification format du champ de saisie
If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0
Then
KeyAscii = 0
msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64,
"Information")
End If
End Sub
Private Sub CODE2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'--- Vérification format du champ de saisie
If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0
Then
KeyAscii = 0
msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64,
"Information")
End If
End Sub
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
Pierre Archambault
Salut Freu
'Dans la partie déclaration du USF: Public Touche As Integer
Ensuite crée une procédure dans un module de code. Par exemple:
Public Sub Validation(Touche As Integer) '--- Vérification format du champ de saisie If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(Touche)) = 0 Then Touche = 0 msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64, "Information") End If End Sub
Puis dans chaque TextBox tu appelle cette procédure:
Private Sub txtTitre_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) Touche = KeyAscii Call Validation(Touche) End Sub
Bonne chance Pierre ----------------------------------------------------------------------------
"Freu" a écrit dans le message de news:
Bonjour,
je code depuis peu en VBA, et je bloque depuis quelques jours sur une fonction. J'utilise une fonction qui me permet de détecter quelle touche a été taper afin empêcher la saisie de certains caractères, or j'ai une 10aine de champs de saisie sur mon USF et suis donc obligé de retaper le code pour chaque champ. Existe t'il une solution pour transformer mon code en macro externe à l'USF afin de m'en resservir a chaque fois que j'en ai besoin, que ce soit sur le même USF ou avec un autre du même projet ?
Private Sub CODE_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) '--- Vérification format du champ de saisie If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0 Then KeyAscii = 0 msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64, "Information") End If End Sub
Private Sub CODE2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) '--- Vérification format du champ de saisie If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0 Then KeyAscii = 0 msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64, "Information") End If End Sub
......
Merci de vos réponses.
Salut Freu
'Dans la partie déclaration du USF:
Public Touche As Integer
Ensuite crée une procédure dans un module de code. Par exemple:
Public Sub Validation(Touche As Integer)
'--- Vérification format du champ de saisie
If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(Touche)) = 0 Then
Touche = 0
msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64,
"Information")
End If
End Sub
Puis dans chaque TextBox tu appelle cette procédure:
Private Sub txtTitre_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Touche = KeyAscii
Call Validation(Touche)
End Sub
Bonne chance
Pierre
----------------------------------------------------------------------------
"Freu" <efferp@hotmail.com> a écrit dans le message de news:
OEBvWElQIHA.2376@TK2MSFTNGP02.phx.gbl...
Bonjour,
je code depuis peu en VBA, et je bloque depuis quelques jours sur une
fonction. J'utilise une fonction qui me permet de détecter quelle touche a
été taper afin empêcher la saisie de certains caractères, or j'ai une
10aine de champs de saisie sur mon USF et suis donc obligé de retaper le
code pour chaque champ. Existe t'il une solution pour transformer mon code
en macro externe à l'USF afin de m'en resservir a chaque fois que j'en ai
besoin, que ce soit sur le même USF ou avec un autre du même projet ?
Private Sub CODE_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'--- Vérification format du champ de saisie
If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0
Then
KeyAscii = 0
msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64,
"Information")
End If
End Sub
Private Sub CODE2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'--- Vérification format du champ de saisie
If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0
Then
KeyAscii = 0
msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64,
"Information")
End If
End Sub
'Dans la partie déclaration du USF: Public Touche As Integer
Ensuite crée une procédure dans un module de code. Par exemple:
Public Sub Validation(Touche As Integer) '--- Vérification format du champ de saisie If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(Touche)) = 0 Then Touche = 0 msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64, "Information") End If End Sub
Puis dans chaque TextBox tu appelle cette procédure:
Private Sub txtTitre_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) Touche = KeyAscii Call Validation(Touche) End Sub
Bonne chance Pierre ----------------------------------------------------------------------------
"Freu" a écrit dans le message de news:
Bonjour,
je code depuis peu en VBA, et je bloque depuis quelques jours sur une fonction. J'utilise une fonction qui me permet de détecter quelle touche a été taper afin empêcher la saisie de certains caractères, or j'ai une 10aine de champs de saisie sur mon USF et suis donc obligé de retaper le code pour chaque champ. Existe t'il une solution pour transformer mon code en macro externe à l'USF afin de m'en resservir a chaque fois que j'en ai besoin, que ce soit sur le même USF ou avec un autre du même projet ?
Private Sub CODE_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) '--- Vérification format du champ de saisie If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0 Then KeyAscii = 0 msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64, "Information") End If End Sub
Private Sub CODE2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) '--- Vérification format du champ de saisie If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0 Then KeyAscii = 0 msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64, "Information") End If End Sub
......
Merci de vos réponses.
Freu
Merci bien, cela marche nickel :)
Je n'ai plus aucun problème pour ca, ce qui est déjà une grande avancée pour moi. A bientôt pour la suite de mes problèmes ;)
"Pierre Archambault" a écrit dans le message de groupe de discussion : s6iaj.17691$
Salut Freu
'Dans la partie déclaration du USF: Public Touche As Integer
Ensuite crée une procédure dans un module de code. Par exemple:
Public Sub Validation(Touche As Integer) '--- Vérification format du champ de saisie If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(Touche)) = 0 Then Touche = 0 msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64, "Information") End If End Sub
Puis dans chaque TextBox tu appelle cette procédure:
Private Sub txtTitre_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) Touche = KeyAscii Call Validation(Touche) End Sub
Bonne chance Pierre ----------------------------------------------------------------------------
"Freu" a écrit dans le message de news:
Bonjour,
je code depuis peu en VBA, et je bloque depuis quelques jours sur une fonction. J'utilise une fonction qui me permet de détecter quelle touche a été taper afin empêcher la saisie de certains caractères, or j'ai une 10aine de champs de saisie sur mon USF et suis donc obligé de retaper le code pour chaque champ. Existe t'il une solution pour transformer mon code en macro externe à l'USF afin de m'en resservir a chaque fois que j'en ai besoin, que ce soit sur le même USF ou avec un autre du même projet ?
Private Sub CODE_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) '--- Vérification format du champ de saisie If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0 Then KeyAscii = 0 msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64, "Information") End If End Sub
Private Sub CODE2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) '--- Vérification format du champ de saisie If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0 Then KeyAscii = 0 msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64, "Information") End If End Sub
......
Merci de vos réponses.
Merci bien, cela marche nickel :)
Je n'ai plus aucun problème pour ca, ce qui est déjà une grande avancée pour
moi. A bientôt pour la suite de mes problèmes ;)
"Pierre Archambault" <pierre.archambault@videotron.ca> a écrit dans le
message de groupe de discussion :
s6iaj.17691$vz3.473782@wagner.videotron.net...
Salut Freu
'Dans la partie déclaration du USF:
Public Touche As Integer
Ensuite crée une procédure dans un module de code. Par exemple:
Public Sub Validation(Touche As Integer)
'--- Vérification format du champ de saisie
If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(Touche)) = 0 Then
Touche = 0
msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64,
"Information")
End If
End Sub
Puis dans chaque TextBox tu appelle cette procédure:
Private Sub txtTitre_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Touche = KeyAscii
Call Validation(Touche)
End Sub
Bonne chance
Pierre
----------------------------------------------------------------------------
"Freu" <efferp@hotmail.com> a écrit dans le message de news:
OEBvWElQIHA.2376@TK2MSFTNGP02.phx.gbl...
Bonjour,
je code depuis peu en VBA, et je bloque depuis quelques jours sur une
fonction. J'utilise une fonction qui me permet de détecter quelle touche
a été taper afin empêcher la saisie de certains caractères, or j'ai une
10aine de champs de saisie sur mon USF et suis donc obligé de retaper le
code pour chaque champ. Existe t'il une solution pour transformer mon
code en macro externe à l'USF afin de m'en resservir a chaque fois que
j'en ai besoin, que ce soit sur le même USF ou avec un autre du même
projet ?
Private Sub CODE_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'--- Vérification format du champ de saisie
If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0
Then
KeyAscii = 0
msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64,
"Information")
End If
End Sub
Private Sub CODE2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'--- Vérification format du champ de saisie
If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0
Then
KeyAscii = 0
msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64,
"Information")
End If
End Sub
Je n'ai plus aucun problème pour ca, ce qui est déjà une grande avancée pour moi. A bientôt pour la suite de mes problèmes ;)
"Pierre Archambault" a écrit dans le message de groupe de discussion : s6iaj.17691$
Salut Freu
'Dans la partie déclaration du USF: Public Touche As Integer
Ensuite crée une procédure dans un module de code. Par exemple:
Public Sub Validation(Touche As Integer) '--- Vérification format du champ de saisie If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(Touche)) = 0 Then Touche = 0 msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64, "Information") End If End Sub
Puis dans chaque TextBox tu appelle cette procédure:
Private Sub txtTitre_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) Touche = KeyAscii Call Validation(Touche) End Sub
Bonne chance Pierre ----------------------------------------------------------------------------
"Freu" a écrit dans le message de news:
Bonjour,
je code depuis peu en VBA, et je bloque depuis quelques jours sur une fonction. J'utilise une fonction qui me permet de détecter quelle touche a été taper afin empêcher la saisie de certains caractères, or j'ai une 10aine de champs de saisie sur mon USF et suis donc obligé de retaper le code pour chaque champ. Existe t'il une solution pour transformer mon code en macro externe à l'USF afin de m'en resservir a chaque fois que j'en ai besoin, que ce soit sur le même USF ou avec un autre du même projet ?
Private Sub CODE_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) '--- Vérification format du champ de saisie If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0 Then KeyAscii = 0 msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64, "Information") End If End Sub
Private Sub CODE2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) '--- Vérification format du champ de saisie If InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789", Chr(KeyAscii)) = 0 Then KeyAscii = 0 msg = MsgBox("Caractères autorisés : [AZ] [-] [09]", 64, "Information") End If End Sub