Lo puedes hacer con GetLocaleInfo y SetLocaleInfo:
Public 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
Public Declare Function SetLocaleInfo Lib "kernel32" Alias "SetLocaleInfoA" (ByVal Locale As Long, ByVal LCType As Long, ByVal lpLCData As String) As Long
Public Const LOCALE_ICURRDIGITS = &H19 ' # local monetary digits
Public Const LOCALE_ICURRENCY = &H1B ' positive currency mode
Public Const LOCALE_IDIGITS = &H11 ' number of fractional digits
Public Const LOCALE_IINTLCURRDIGITS = &H1A ' # intl monetary digits
Public Const LOCALE_ILZERO = &H12 ' leading zeros for decimal
Public Const LOCALE_INEGCURR = &H1C ' negative currency mode
Public Const LOCALE_INEGSEPBYSPACE = &H57 ' mon sym sep by space from neg amt
Public Const LOCALE_INEGSIGNPOSN = &H53 ' negative sign position
Public Const LOCALE_INEGSYMPRECEDES = &H56 ' mon sym precedes neg amt
Public Const LOCALE_IPOSSEPBYSPACE = &H55 ' mon sym sep by space from pos amt
Public Const LOCALE_IPOSSIGNPOSN = &H52 ' positive sign position
Public Const LOCALE_IPOSSYMPRECEDES = &H54 ' mon sym precedes pos amt