[英]Microsoft Access IF statement
我想知道您是否可以在 Microsoft Access 中进行if
语句。
这个想法是你有 2 列。 第一个称为“数量”(类型是数字),第二个称为“有货”(类型是/否),并且要声明:
“如果数量> 0,则“有货”应打勾,否则不打勾。”
我在尝试:
iff([quantity] = 0, [in stock] = "No", [in stock] = "Yes")
也试过这个
iff([quantity] = 0, [in stock] = false, [in stock] = true)
希望你能得到它,有人可以帮助或告诉我是否有可能做到这一点?
提前致谢
如果您使用的是提供计算字段类型的 MS Access 版本,则此任务相对简单,不需要查询或代码。
只需将您的In Stock
字段配置为计算字段,使用以下表达式计算:
[Quantity] > 0
将结果类型设置为Yes/No
以指示结果将是布尔字段的结果。
可以根据您的应用程序适当地设置格式(我假设Yes/No
)。
所有版本的 Microsoft Access 都支持查询中的计算值。 这是一个正确实施它的问题。 IE:
有货: iff([数量] = 0, "No", "Yes")
放入并创建新字段:In Stock
首先,您不能使用 IIf 函数来更改复选框或绑定控件的值。
如果您想要做的只是确定哪些项目/产品有库存,哪些没有,您实际上不需要在表中包含任何字段,例如 [In Stock] 字段。 一种更优雅的方法是简单地评估 Quantity 字段并使用未绑定的文本框来显示 Yes 或 No。
将未绑定文本框的控件源设置为:
=IIf([Quantity] > 0, "In Stock", "Out of Stock")
一个轻微的替代方案是:
=IIf([Quantity] > 0, "Yes", "No")
在上述稍微替代的情况下,您将未绑定文本框的标签或标题标签更改为“有货”。 这样,将为每个产品显示的 Yes 或 No 对所有用户和查看者都有意义。 请注意,等号 (=) 是您要键入的内容的一部分。
如果由于某种原因您需要将 [In Stock] 字段存储为基础表中的 Yes/No 数据类型,并且您希望将此值更新为 Yes 或 No(勾选或取消勾选),那么您可以使用宏。 在此宏中,您将使用传统的 If Then Else 语句和 SetValue 操作。 我目前无法发布屏幕截图/插图,因为我目前正在使用手机。 声明如下:
If [Quantity] > 0
Then SetValue [In Stock] =Yes
Else: SetValue [In Stock] = No
注意:您也可以将 1 副标题为是,0 副标题为否。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.