Datagrid + '.' ou ','

mathnel Messages postés 14 Date d'inscription vendredi 1 mars 2002 Statut Membre Dernière intervention 11 septembre 2009 - 10 févr. 2004 à 17:06
gaa179 Messages postés 361 Date d'inscription mercredi 21 mai 2003 Statut Membre Dernière intervention 12 novembre 2009 - 11 févr. 2004 à 08:02
J'ai un datagrid et j'aimerais y integrer des decimales dans une colonne associé à un champ decimal. Le probleme est quand je tabule le "." du pave numerique il ecrit "." et non pas "," comme prévu depuis les parametres regionnaux. Comme le "." n'est pas une valeur decimale il annule immediatement la valeur tapé. je n'arrive meme pas à recuperer la valeur ecrite dans mon datagrid malgrés un currentcell, toute idee est la bienvenue.

1 réponse

gaa179 Messages postés 361 Date d'inscription mercredi 21 mai 2003 Statut Membre Dernière intervention 12 novembre 2009 2
11 févr. 2004 à 08:02
Salut,

Tu peux modifier la valeur écrite avant la mise à jour dans la BD en utilisant l'évènement 'BeforeColUpdate'. Tu peux alors modifier ton '.' en ',' en utilsant une fonction du type:
Public Function TransDecimal(MyValue As String) As String
If InStr(1, MyValue, ",", vbTextCompare) > 0 Then
TransDecimal = Mid(MyValue, 1, InStr(1, MyValue, ",", vbTextCompare) - 1) & "." & Mid(MyValue, InStr(1, MyValue, ",", vbTextCompare) + 1, Len(MyValue) - InStr(1, MyValue, ",", vbTextCompare) + 1)
Else
TransDecimal = MyValue
End If
End Function

A+
0
Rejoignez-nous