2014-11-04 43 views
0

我有一个从SQL Server 2005数据库中提取信息的宏。 其中一些信息是数字......这些数字的小数部分用逗号“,”分隔。这是预期的情况。 但是在某台计算机上,数字是用点“”来检索的。分隔小数部分。使用点而不是逗号从SQL数据库中检索数字

Set rs = conn.Execute(".......") 
    If Not rs.BOF And Not rs.EOF Then 
     RefNum = rs.Fields(0) 
    End If 

我该如何改变这种行为?我想用数字“”在所有的计算机

+0

只是为了澄清,你希望所有的结果都返回一个小数点的地方,而不是一个逗号? – Gareth 2014-11-04 13:38:15

+2

我认为你的'某台计算机'使用另一个点作为小数点分隔符的区域设置。你的客户代码应该处理这种情况。 – 2014-11-04 13:43:06

回答

1

分离小数部分。如果我理解正确的话,你需要的是以下...

Set rs = conn.Execute(".......") 
    If Not rs.BOF And Not rs.EOF Then 
     RefNum = Replace (rs.Fields(0), ".", ",") 
    End If 

否则,你可以使用应用程序DecimalSeparator属性

' Define separators and apply. 
Application.DecimalSeparator = "." 
Application.ThousandsSeparator = "" 
Application.UseSystemSeparators = False