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 CFI
bonjour dans quel contexte ? car en vb c'est toujours un point pour décimales, format mm/dd/yyyy pour les dates etc...
-- Pierre CFI MVP Microsoft Access Mail : http://cerbermail.com/?z0SN8cN53B
Site pour bien commencer http://users.skynet.be/mpfa/ Site perso http://access.cfi.free.fr "Eric" a écrit dans le message de news: 38a701c3993f$17b827c0$ le format "." dans VBA ne fonctionne pas si les paramètres de l'ordinateur sont en mode ",".
De l'aide.
Merci
bonjour
dans quel contexte ? car en vb c'est toujours un point pour décimales, format mm/dd/yyyy pour les dates etc...
--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B
Site pour bien commencer
http://users.skynet.be/mpfa/
Site perso
http://access.cfi.free.fr
"Eric" <anonymous@discussions.microsoft.com> a écrit dans le message de news: 38a701c3993f$17b827c0$7d02280a@phx.gbl...
le format "." dans VBA ne fonctionne pas si les paramètres
de l'ordinateur sont en mode ",".
bonjour dans quel contexte ? car en vb c'est toujours un point pour décimales, format mm/dd/yyyy pour les dates etc...
-- Pierre CFI MVP Microsoft Access Mail : http://cerbermail.com/?z0SN8cN53B
Site pour bien commencer http://users.skynet.be/mpfa/ Site perso http://access.cfi.free.fr "Eric" a écrit dans le message de news: 38a701c3993f$17b827c0$ le format "." dans VBA ne fonctionne pas si les paramètres de l'ordinateur sont en mode ",".
De l'aide.
Merci
Michel Gaboly
Bonjour,
C'est effectivement le cas pour la saisie dans un TextBox par exemple
Si tu as besoin que la valeur entrée dans un TexBox, "TMontant" par exemple soit un nombre positif, utilise la propriété "International" pour lire le séparateur actif, et remplacer lors de la frappe point ou virgule par le séparateur :
Private Sub TMontant_Change() If TMontant<> "" Then Sep = Application.International(xlDecimalSeparator) TMontant = Application.WorksheetFunction.Substitute(TMontant, ".", Sep) TMontant = Application.WorksheetFunction.Substitute(TMontant, ",", Sep) If Not IsNumeric(TextBox1) Then MsgBox "Le montant doit être un nombre positif !" ' Suppression du dernier caractère entré. TextBox1 = Left(TextBox1, Len(TextBox1) - 1) End If End If End Sub
Une adaptation est nécessaire pour accepter les nombres négatifs (accepter "-" en première position) :
If TMontant <> "" And TMontant <> "-" Then ... MsgBox "Le montant doit être un nombre !" ...
le format "." dans VBA ne fonctionne pas si les paramètres de l'ordinateur sont en mode ",".
De l'aide.
Merci
-- Cordialement,
Michel Gaboly http://www.gaboly.com
Bonjour,
C'est effectivement le cas pour la saisie dans un TextBox par exemple
Si tu as besoin que la valeur entrée dans un TexBox, "TMontant" par exemple soit un nombre positif,
utilise la propriété "International" pour lire le séparateur actif, et remplacer lors de la frappe
point ou virgule par le séparateur :
Private Sub TMontant_Change()
If TMontant<> "" Then
Sep = Application.International(xlDecimalSeparator)
TMontant = Application.WorksheetFunction.Substitute(TMontant, ".", Sep)
TMontant = Application.WorksheetFunction.Substitute(TMontant, ",", Sep)
If Not IsNumeric(TextBox1) Then
MsgBox "Le montant doit être un nombre positif !"
' Suppression du dernier caractère entré.
TextBox1 = Left(TextBox1, Len(TextBox1) - 1)
End If
End If
End Sub
Une adaptation est nécessaire pour accepter les nombres négatifs (accepter "-" en première position) :
If TMontant <> "" And TMontant <> "-" Then
...
MsgBox "Le montant doit être un nombre !"
...
le format "." dans VBA ne fonctionne pas si les paramètres
de l'ordinateur sont en mode ",".
C'est effectivement le cas pour la saisie dans un TextBox par exemple
Si tu as besoin que la valeur entrée dans un TexBox, "TMontant" par exemple soit un nombre positif, utilise la propriété "International" pour lire le séparateur actif, et remplacer lors de la frappe point ou virgule par le séparateur :
Private Sub TMontant_Change() If TMontant<> "" Then Sep = Application.International(xlDecimalSeparator) TMontant = Application.WorksheetFunction.Substitute(TMontant, ".", Sep) TMontant = Application.WorksheetFunction.Substitute(TMontant, ",", Sep) If Not IsNumeric(TextBox1) Then MsgBox "Le montant doit être un nombre positif !" ' Suppression du dernier caractère entré. TextBox1 = Left(TextBox1, Len(TextBox1) - 1) End If End If End Sub
Une adaptation est nécessaire pour accepter les nombres négatifs (accepter "-" en première position) :
If TMontant <> "" And TMontant <> "-" Then ... MsgBox "Le montant doit être un nombre !" ...
le format "." dans VBA ne fonctionne pas si les paramètres de l'ordinateur sont en mode ",".