我无法从 Access 中表达式生成器的数字字段中提取整数。
这是我认为可行的方法:
Left([NumField],InStr(1,[NumField],".")-1)
这不起作用。运行查询后,我会弹出一个消息框,说明“无效的呼叫过程”
表达式前的字段 = 1.4
表达式后面的字段 = 1
因此取整数并提取它。当然,整数可以是 3、30 或 300。长度将始终不同,因此您不能使用长度为 1 的 trim left。
建议?
我无法从 Access 中表达式生成器的数字字段中提取整数。
这是我认为可行的方法:
Left([NumField],InStr(1,[NumField],".")-1)
这不起作用。运行查询后,我会弹出一个消息框,说明“无效的呼叫过程”
表达式前的字段 = 1.4
表达式后面的字段 = 1
因此取整数并提取它。当然,整数可以是 3、30 或 300。长度将始终不同,因此您不能使用长度为 1 的 trim left。
建议?
您似乎将数值视为字符串以提取整数部分。建议您考虑使用该Int()
功能。
Int([NumField])
还有一个相关的功能,Fix()
。从访问帮助主题:
Int 和 Fix 的区别在于,如果 number 为负数,Int 返回小于等于 number 的第一个负整数,而 Fix 返回大于等于 number 的第一个负整数。例如,Int 将 -8.4 转换为 -9,Fix 将 -8.4 转换为 -8。
我假设您想要查询返回的数字。如果您实际上希望将数字作为字符串,则可以使用CStr(Int([NumField]))
or Format(Int([NumField]), "#")
。