Access 2013 表单字段值在更改点之前的数字时被截断
Access 2013 form field value gets cut off on changing the number before the point
最近我创建了一个从 SQL(链接)数据库加载一些记录的表单。
我想显示一些字段值(在 sql 服务器中是十进制数 - 30,2)。
这些值加载到表单中,并以逗号表示小数点和一个点作为 1000 分隔符,如下所示:5.222,55
。 (计算机上的语言设置)。
虽然问题是,当我将点之前的 5 更改为任何数字时,该值会被截断并且它将点视为小数点分隔符。所以比如我只select 5.222,55这个数字上的数字(所以我离开点)然后把它改成2,这个值就改成了2,22
.
虽然当我 select 整数或第一个数字和点然后它正确改变。那么我怎样才能做到这一点呢?最简单的方法是 select 更改整个数字,但我只希望它以各种方式工作。也许我可以用 VBA 来实现它?我尝试设置格式选项(回到 access 2000,我相信我可以将文本字段设置为长整数或货币或其他东西,但我无法在 access 2013 字段属性中找到它)。
附加信息:
- 我正在链接 SQL 服务器 2012,
- Access 中的链接 table 将字段记录源(SQL 字段)视为短文本(而在 SQL 服务器中它们是小数)
Access 无法处理 30,2 小数,因此它被 ODBC 驱动程序转换为文本。
因此,要么使用 Str
和 Val
在文本和数字之间来回转换(C* 函数不会做),要么更改 [= 中字段的数据类型16=] 服务器,例如,Money(= 访问中的货币)。
最近我创建了一个从 SQL(链接)数据库加载一些记录的表单。
我想显示一些字段值(在 sql 服务器中是十进制数 - 30,2)。
这些值加载到表单中,并以逗号表示小数点和一个点作为 1000 分隔符,如下所示:5.222,55
。 (计算机上的语言设置)。
虽然问题是,当我将点之前的 5 更改为任何数字时,该值会被截断并且它将点视为小数点分隔符。所以比如我只select 5.222,55这个数字上的数字(所以我离开点)然后把它改成2,这个值就改成了2,22
.
虽然当我 select 整数或第一个数字和点然后它正确改变。那么我怎样才能做到这一点呢?最简单的方法是 select 更改整个数字,但我只希望它以各种方式工作。也许我可以用 VBA 来实现它?我尝试设置格式选项(回到 access 2000,我相信我可以将文本字段设置为长整数或货币或其他东西,但我无法在 access 2013 字段属性中找到它)。
附加信息:
- 我正在链接 SQL 服务器 2012,
- Access 中的链接 table 将字段记录源(SQL 字段)视为短文本(而在 SQL 服务器中它们是小数)
Access 无法处理 30,2 小数,因此它被 ODBC 驱动程序转换为文本。
因此,要么使用 Str
和 Val
在文本和数字之间来回转换(C* 函数不会做),要么更改 [= 中字段的数据类型16=] 服务器,例如,Money(= 访问中的货币)。