1 membre
Connectés : ( personne )
- La Charte du Forum - Forum - Problèmes Access des débutants
Sujet n° 393 |
Changer la valeur d'une touche du clavier . pour , |
le 01/08/2010 : 09:48 par possible924
visiteur |
Bonjour à tous, Dans Access (comme dans Excel) appuyer sur la touche "." du pavé numérique envoie ",". Est'il possible, d'exécuter au démarrage d'une application, un code qui modifie le résultat de l'action sur la touche point du pavé numérique pour obtenir un point. Et quel code ? Merci par avance pour votre aide |
|
|
Réponse n° 1 -------- le 01/08/2010 : 22:26 par marsouin_89
visiteur |
Bonjour,
Essaie ce code "sur touche appuyé" de ton controle :
Private Sub MaZoneTexte_KeyDown(KeyCode as Integer, Shift as Integer)
Select Case KeyCode
Case 190,110'190 : point du clavier, 110 : point du pavé numérique
KeyCode=188
End Select
Ainsi, le point sera remplacé par une virgule.
Cordialement
Christophe |
|
|
Réponse n° 2 -------- le 02/08/2010 : 10:56 par possible924
visiteur |
Merci pour ta réponse. Avec KeyCode = 188, j'obtiens toujours "," Avec KeyCode = 90, j'obtiens "z"
Je n'arrive pas à trouver le bon code pour obtenir "." A+ |
|
|
Réponse n° 3 -------- le 02/08/2010 : 13:20 par 3Stone
Administrateur
|
Bonjour,
Citation : possible924
Dans Access (comme dans Excel) appuyer sur la touche "." du pavé numérique envoie ","
Non, cela renvoie le séparateur décimal défini dans les paramètres régionaux...
Et on ne touche pas à ces derniers, car ils appartiennent à l'utilisateur.
Mais, si tu as un champ qui ne doit pas accepter la virgule, mais uniquement le point, je te propose de placer sur "après mise à jour" de la zone de texte:
Code :
ChampX = Replace(ChampX, "," , ".")
Cordialement,
Pierre(3stone) |
|
|
Réponse n° 4 -------- le 02/08/2010 : 13:41 par possible924
visiteur |
Merci pour la réponse. Cette solution ne convient pas, car le champ peut contenir un commentaire qui peut être assez long, avec ponctuation donc points et virgules. En fait je souhaiterais que dans toute mon application, l'action sur le point du clavier numérique renvie un point, comme dans Word, mais ce n'est peut être pas possible. Bien cordialement Pierre |
|
|
Réponse n° 5 -------- le 02/08/2010 : 16:04 par 3Stone
Administrateur
|
Salut,
Pour avoir quelque chose qui fonctionne dans tous les cas, quelques soit le clavier et les paramètres régionaux, il faut alors un peu plus.
Disons que la zone de texte se nomme txtSaisie...
Tu places alors le code suivant "sur touche appuyée" de cette zone:
Code :
Private Sub txtSaisie_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = vbKeyDecimal Then txtSaisie.Value = txtSaisie.Text & "," txtSaisie.SelStart = txtSaisie.SelLength KeyCode = 0 End If End Sub
en ayant placé l'apercu touche sur oui au niveau du formulaire, bien sûr.
Cordialement,
Pierre(3stone) |
|
|
sujet actif
sujet clos
Important!
Nouveau message -
Rectifier message
Clôturer sujet
Remonter
|