Rozwiązanie podał BraZby (brazby@poczta.onet.pl), oto ono:
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 Function zbSepDec() Dim lRet As Long Dim sBfData As String Dim lType As Long Const cBf = 3 Const LOCALE_USER_DEFAULT& = &H400 Const LOCALE_SDECIMAL = &HE lType = LOCALE_SDECIMAL sBfData = Space(cBf) lRet = GetLocaleInfo(LOCALE_USER_DEFAULT, lType, sBfData, cBf) zbSepDec = Left(sBfData, lRet - 1) End Function
Funkcja zbSepDec() zwróci przecinek, kropkę lub inny separator, w zależności od ustawień regionalnych.
A oto pomysłowe rozwiązanie tego samego problemu, podane przez Grzegorza Banasiaka:
Mid(Format(1, "0.00"), 2, 1)
Całą robotę wykonuje Access, my tylko radośnie kradniemy wyniki - pisze Grzegorz.