MS Access 2016如何基于条件动态修改字段数值显示格式
Access 2016 连续窗体按条件修改数值显示格式的解决方案
场景1:仅需展示、无需编辑字段值
- 直接将窗体中原先绑定
price_margin字段的文本框设置为计算类型,控件来源填写如下表达式即可自动适配格式:=IIf([margin_is_dollar_add], Format([price_margin], "Currency"), Format([price_margin]/100, "Percent")) - 若你的
price_margin字段存储的百分比值已经是除以100后的小数(比如15%存为0.15),把表达式里的/100去掉即可。 - 该方案无需编写代码,连续窗体的每一行都会独立计算格式,不会出现全行同步的异常。
场景2:需要支持字段编辑
条件格式本身不支持直接修改数值格式,但支持控制控件可见性,你可以通过两个重叠的同位置文本框实现需求:
- 插入第一个文本框,绑定
price_margin字段,格式设置为「货币」,添加条件格式规则:当表达式[margin_is_dollar_add]=False成立时,设置控件为隐藏。 - 插入第二个文本框,同样绑定
price_margin字段,格式设置为「百分比」,添加条件格式规则:当表达式[margin_is_dollar_add]=True成立时,设置控件为隐藏。 - 两个文本框位置、大小设置为完全一致,运行时只会显示对应格式的文本框,编辑后的值会自动同步到源表中。
内容的提问来源于stack exchange,提问作者Brenda
相关产品推荐
相关产品推荐

