Mes recherches m'ont aboutir à ce code (de Fanch) pour une textbox
VB:
Private Sub TextBoxREch_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'KeyAscii = 46 ----> virgule (,) et KeyAscii = 44 ----> point (.)
If KeyAscii = 46 Then KeyAscii = 44
End Sub
Je suis bloqué pour adapter ce code pour une feuille excel.
Mon séparateur de décimaux est la virgule. Je n'ai pas de pavé numérique.
Je me mets donc mode majuscule pour saisir les chiffres et utilise la touche Shift pour la virgule.
Pas très pratique, je voudrais un code pour transformer la pression du point en virgule. Ceci n'agissant qu'en colonne B à partir de la ligne 6.
@chris: Je ne suis pas radin à ce point. En réalité, ce n'est pas pour moi mais pour un voisin. Vu sa situation, tu m'inspires pour faire une bonne action. Je vais offrir un pavé numérique.
@Lolote83 : En effet, il n'y a pas d'évènement Keypress pour une feuille et c'est ce qui m'a bloqué. Merci.
La solution est la suivante changer les paramètres à l'ouverture du fichier.
VB:
Private Sub Workbook_Open()
With Application
.DecimalSeparator = "."
.ThousandsSeparator = " "
.UseSystemSeparators = False
End With
end sub
Bonjour Cathodique.
Je ne sais pas si cela est faisable directement sur une feuille XL.
A mon sens, il n'existe pas d’événement équivalent à "KeyPress" directement sur une feuille.
La seule possibilité est un événement "change" sur une cellule mais c'est la validation "ENTER" ou autre qui déclenche cet événement. Donc je ne vois pas de solution.
Mais cela m'interresse et je vais donc suivre cette discussion.
Courage
@+ Lolote83
@chris: Je ne suis pas radin à ce point. En réalité, ce n'est pas pour moi mais pour un voisin. Vu sa situation, tu m'inspires pour faire une bonne action. Je vais offrir un pavé numérique.
@Lolote83 : En effet, il n'y a pas d'évènement Keypress pour une feuille et c'est ce qui m'a bloqué. Merci.
La solution est la suivante changer les paramètres à l'ouverture du fichier.
VB:
Private Sub Workbook_Open()
With Application
.DecimalSeparator = "."
.ThousandsSeparator = " "
.UseSystemSeparators = False
End With
end sub