首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >具有多个条件的access中的if语句

具有多个条件的access中的if语句
EN

Stack Overflow用户
提问于 2021-01-06 15:35:41
回答 1查看 28关注 0票数 0

我在excel中得到了这个公式,我需要将其转换为access。我提出了这一点,但如果一些事件被认为是“不准确”的,那么结果将给出所有“准确”的结果事件。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
MRP Method Accurate:IIF([ITEM_TYPE]="PH"AND[MRP_PLANNING_CODE]="Not planned","accurate",
IIF([INVENTORY_ITEM_STATUS_CODE]="SrvcOnly"OR[INVENTORY_ITEM_STATUS_CODE]="Inactive"
AND[MRP_PLANNING_CODE]="Not planned","accurate",
IIF([INVENTORY_ITEM_STATUS_CODE]="ContrldRel"OR[INVENTORY_ITEM_STATUS_CODE]="Relsd Item"OR[INVENTORY_ITEM_STATUS_CODE]="Relsd SKU"
OR[INVENTORY_ITEM_STATUS_CODE]="PhsingOut"AND[MRP_PLANNING_CODE]="MRP and MPP planning","accurate",
IIF([INVENTORY_ITEM_STATUS_CODE]="Unreleased"AND[ITEM_TYPE]="SA"AND[MRP_PLANNING_CODE]="MRP and MPP planning","accurate",
IIF([INVENTORY_ITEM_STATUS_CODE]="Unreleased"AND[ITEM_TYPE]="PUR"AND[MRP_PLANNING_CODE]="Not planned","accurate","not accurate")))))

我也试过了。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
MRP Method Accurate:IIF([ITEM_TYPE]="PH"AND[MRP_PLANNING_CODE]="Not planned","accurate",
IIF([INVENTORY_ITEM_STATUS_CODE] IN("SrvcOnly","Inactive")AND[MRP_PLANNING_CODE]="Not planned","accurate",
IIF([INVENTORY_ITEM_STATUS_CODE] IN("ContrldRel","Relsd Item","Relsd SKU","PhsingOut")AND[MRP_PLANNING_CODE]="MRP and MPP planning","accurate",
IIF([INVENTORY_ITEM_STATUS_CODE]="Unreleased"AND[ITEM_TYPE]="SA"AND[MRP_PLANNING_CODE]="MRP and MPP planning","accurate",
IIF([INVENTORY_ITEM_STATUS_CODE]="Unreleased"AND[ITEM_TYPE]="PUR"AND[MRP_PLANNING_CODE]="Not planned","accurate","not accurate")))))

但在查询表达式'MRP Method Complete‘中出现错误Sytax error (missing operator)。

EN

回答 1

Stack Overflow用户

发布于 2021-01-06 15:44:06

将你的代码限制在一个iif中怎么样:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
MRP Method Accurate:
IIF( ([ITEM_TYPE]="PH" AND [MRP_PLANNING_CODE]="Not planned")
    or ([INVENTORY_ITEM_STATUS_CODE]="SrvcOnly"OR[INVENTORY_ITEM_STATUS_CODE]="Inactive" AND[MRP_PLANNING_CODE]="Not planned")
    or ([INVENTORY_ITEM_STATUS_CODE]="ContrldRel"OR[INVENTORY_ITEM_STATUS_CODE]="Relsd Item"OR[INVENTORY_ITEM_STATUS_CODE]="Relsd SKU" OR[INVENTORY_ITEM_STATUS_CODE]="PhsingOut"AND[MRP_PLANNING_CODE]="MRP and MPP planning")
    or ([INVENTORY_ITEM_STATUS_CODE]="Unreleased"AND[ITEM_TYPE]="SA"AND[MRP_PLANNING_CODE]="MRP and MPP planning")
    or ([INVENTORY_ITEM_STATUS_CODE]="Unreleased"AND[ITEM_TYPE]="PUR"AND[MRP_PLANNING_CODE]="Not planned")
    ,"accurate"
    ,"not accurate")

如果你想找出哪一块通过了测试,那就写这5列。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    IIF( ([ITEM_TYPE]="PH" AND [MRP_PLANNING_CODE]="Not planned"),1,0)
        ,iif([INVENTORY_ITEM_STATUS_CODE]="SrvcOnly"OR[INVENTORY_ITEM_STATUS_CODE]="Inactive" AND[MRP_PLANNING_CODE]="Not planned"),1,0)
        ,iif([INVENTORY_ITEM_STATUS_CODE]="ContrldRel"OR[INVENTORY_ITEM_STATUS_CODE]="Relsd Item"OR[INVENTORY_ITEM_STATUS_CODE]="Relsd SKU" ),1,0)
,iif([INVENTORY_ITEM_STATUS_CODE]="PhsingOut"AND[MRP_PLANNING_CODE]="MRP and MPP planning"),1,0)
        ,iif([INVENTORY_ITEM_STATUS_CODE]="Unreleased"AND[ITEM_TYPE]="SA"AND[MRP_PLANNING_CODE]="MRP and MPP planning"),1,0)
        ,iif(([INVENTORY_ITEM_STATUS_CODE]="Unreleased"AND[ITEM_TYPE]="PUR"AND[MRP_PLANNING_CODE]="Not planned")),1,0)

对它们进行适当的命名。

最后,添加另一列

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
iif(Test1+...+testN >0, "accurate","not accurate")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65598697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文