Séparateur décimal VBA

Le
Daniel
Re.
Avec VBA, comment récupérer le séparateur décimal quand on utilise les
paramètres système ?
Merci d'avance.
Daniel
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichDenis
Le #4812821
Pour extraire le séparateur décimale définit dans le panneau
de configuration de Windows :

'-------------------------
Sub Test()

Dim SepDec As String
SepDec = Format(0, ".")
'Ceci était une suggestion d'Alain Cros.

'.il y a aussi cette ligne de code :
SepDec = Application.International(xlDecimalSeparator)

End Sub
'-------------------------
.






"Daniel" %
Re.
Avec VBA, comment récupérer le séparateur décimal quand on utilise les
paramètres système ?
Merci d'avance.
Daniel
Daniel
Le #4812781
OK. Merci beaucoup.
Daniel
"MichDenis"
Pour extraire le séparateur décimale définit dans le panneau
de configuration de Windows :

'-------------------------
Sub Test()

Dim SepDec As String
SepDec = Format(0, ".")
'Ceci était une suggestion d'Alain Cros.

'.il y a aussi cette ligne de code :
SepDec = Application.International(xlDecimalSeparator)

End Sub
'-------------------------
.






"Daniel" %
Re.
Avec VBA, comment récupérer le séparateur décimal quand on utilise les
paramètres système ?
Merci d'avance.
Daniel





Hervé
Le #4812701
Bonjour Daniel,
Un peu plus complexe mais qui marche très bien :

Declare Function GetSystemDefaultLCID _
Lib "kernel32" () As Long

Declare Function GetLocaleInfo _
Lib "kernel32" _
Alias "GetLocaleInfoA" ( _
ByVal Locale As Long, _
ByVal LCType As Long, _
ByVal lpLCData As String, _
ByVal cchData As Long) As Long

Sub SeparateurDecimal()
Dim Tampon As String
Dim LG_Tampon As Long

LCID = GetSystemDefaultLCID

LG_Tampon = 255

Tampon = String$(LG_Tampon, vbNullChar)

LG_Tampon = GetLocaleInfo( _
GetSystemDefaultLCID, _
&HE, _
Tampon, _
LG_Tampon)

If LG_Tampon > 0 Then
MsgBox Left$(Tampon, LG_Tampon - 1)
End If

End Sub

Hervé.

"Daniel" #
Re.
Avec VBA, comment récupérer le séparateur décimal quand on utilise les
paramètres système ?
Merci d'avance.
Daniel




Daniel
Le #4812611
Merci à toi aussi.
Daniel
"Hervé" %236yD%23$
Bonjour Daniel,
Un peu plus complexe mais qui marche très bien :

Declare Function GetSystemDefaultLCID _
Lib "kernel32" () As Long

Declare Function GetLocaleInfo _
Lib "kernel32" _
Alias "GetLocaleInfoA" ( _
ByVal Locale As Long, _
ByVal LCType As Long, _
ByVal lpLCData As String, _
ByVal cchData As Long) As Long

Sub SeparateurDecimal()
Dim Tampon As String
Dim LG_Tampon As Long

LCID = GetSystemDefaultLCID

LG_Tampon = 255

Tampon = String$(LG_Tampon, vbNullChar)

LG_Tampon = GetLocaleInfo( _
GetSystemDefaultLCID, _
&HE, _
Tampon, _
LG_Tampon)

If LG_Tampon > 0 Then
MsgBox Left$(Tampon, LG_Tampon - 1)
End If

End Sub

Hervé.

"Daniel" #
Re.
Avec VBA, comment récupérer le séparateur décimal quand on utilise les
paramètres système ?
Merci d'avance.
Daniel








Publicité
Poster une réponse
Anonyme