Power Query: If 语句

您所在的位置:网站首页 if和and嵌套函数的使用 Power Query: If 语句

Power Query: If 语句

2023-12-21 14:08| 来源: 网络整理| 查看: 265

Power Query: If 语句 - 嵌套 if 和多个条件

在 Excel 中 Power QueryIF 语句是最流行的函数之一,用于检查条件并根据结果是 TRUE 还是 FALSE 返回特定值。 这个if语句和Excel的IF函数有一些区别。 在本教程中,我将为您介绍这个 if 语句的语法以及一些简单和复杂的示例。

基本 if 语句语法 Power Query

Power Query 使用条件列的 if 语句

示例 1:基本 if 语句 示例 2:复杂的 if 语句

Power Query 编写M代码的if语句

示例 1:基本 if 语句 示例 2:复杂的 if 语句 嵌套 if 语句 带 OR 逻辑的 If 语句 If 语句与逻辑 具有 OR 和 AND 逻辑的 If 语句 基本 if 语句语法 Power Query

In Power Query,语法为:

= 如果 logical_test 那么 value_if_true 否则 value_if_false 逻辑测试:您要测试的条件。 值_if_true:结果为真时返回的值。 值_if_false:如果结果为 FALSE,则返回值。 备注: Power Query if 语句区分大小写,if、then 和 else 必须小写。

在 Excel 中 Power Query,有两种方法可以创建这种类型的条件逻辑:

在一些基本场景下使用条件列功能; 为更高级的场景编写 M 代码。

在下一节中,我将讨论使用此 if 语句的一些示例。

Power Query 使用条件列的 if 语句  示例 1:基本 if 语句

这里我就介绍一下这个if语句的使用方法 Power Query。 例如,我有以下产品报告,如果产品状态为旧,则显示 50% 折扣; 如果产品状态为“新品”,则显示 20% 折扣,如下图所示。

1. 从工作表中选择数据表,然后在 Excel 2019 和 Excel 365 中,单击 Data > 从表/范围,请参见屏幕截图:

备注:在 Excel 2016 和 Excel 2021 中,单击 Data > 从表,请参见屏幕截图:

2。 然后,在打开 Power Query 编者 窗口中,单击 添加列 > 条件列,请参见屏幕截图:

3。 在弹出 添加条件列 对话框,请执行以下操作:

新列名称:为新列输入名称; 然后,指定您需要的条件。 例如,我将指定 如果 Status 等于 Old,则为 50%,否则为 20%; 提示: 栏名:用于评估您的 if 条件的列。 在这里,我选择状态。 操作者: 要使用的条件逻辑。 选项将根据所选列名称的数据类型而有所不同。 文本:以、不以、等于、包含等开头。 数值:等于、不等于、大于或等于等。 日期:之前,之后,等于,不等于等。 值:用于比较您的评估的特定值。 它与 Column Name 和 Operator 一起构成一个条件。 输出:满足条件时返回的值。 其他:条件为假时返回的另一个值。

4。 然后,点击 OK 按钮返回 Power Query 编者 窗户。 现在,一个新的 已优惠 添加了列,请参见屏幕截图:

5. 如果要将数字格式化为百分比,只需单击 ABC123 从的图标 已优惠 列标题,然后选择 百分比 根据需要,请参见屏幕截图:

6. 最后请点击 首页 > 关闭并加载 > 关闭并加载 将此数据加载到新工作表。

 示例 2:复杂的 if 语句

使用此条件列选项,您还可以将两个或多个条件插入到 添加条件列 对话。 请这样做:

1. 选择数据表,然后转到 Power Query 编者 通过单击窗口 Data > 从表/范围. 在新窗口中,单击 添加列 > 条件列.

2。 在弹出 添加条件列 对话框,请执行以下操作:

将新列的名称输入到 新列名称 文本框; 在第一个条件字段中指定第一个条件,然后单击 添加条款 按钮以根据需要添加其他条件字段。

3. 完成条件后,单击 OK 按钮返回 Power Query 编者 窗户。 现在,您将获得一个包含您需要的相应结果的新列。 看截图:

4. 最后请点击 首页 > 关闭并加载 > 关闭并加载 将此数据加载到新工作表。

Power Query 编写M代码的if语句

通常情况下,Conditional Column 对一些基本场景很有帮助。 有时,您可能需要使用具有 AND 或 OR 逻辑的多个条件。 在这种情况下,对于更复杂的情况,您必须在自定义列中编写 M 代码。

 示例 1:基本 if 语句

以第一个数据为例,如果产品状态为Old,则显示50%的折扣; 如果产品状态为新品,则显示 20% 的折扣。 编写 M 代码时,请按照以下步骤操作:

1。 选择表,然后单击 Data > 从表/范围 去 Power Query 编者 窗口。

2. 在打开的窗口中,单击 添加列 > 自定义列,请参见屏幕截图:

3。 在弹出 自定义列 对话框,请执行以下操作:

将新列的名称输入到 新列名称 文本框; 然后,输入这个公式: 如果 [Status] = "Old " then "50% " else "20% " 到 自定义列 公式 框。

4。 然后,点击 OK 关闭此对话框。 现在,您将根据需要获得以下结果:

5。 最后点击 首页 > 关闭并加载 > 关闭并加载 将此数据加载到新工作表。

 示例 2:复杂的 if 语句

嵌套 if 语句

通常,为了测试子条件,您可以嵌套多个 if 语句。 例如,我有下面的数据表。 如果产品是“连衣裙”,则给予原价50%的折扣; 如果产品是“毛衣”或“连帽衫”,则给予原价 20% 的折扣; 其他产品保持原价。

1. 选择数据表,然后单击 Data > 从表/范围 去 Power Query 编者 窗口。

2. 在打开的窗口中,单击 添加列 > 自定义列。 在开 自定义列 对话框,请执行以下操作:

将新列的名称输入到 新列名称 文本框; 然后,将下面的公式输入到 自定义列 公式 框。 = if [Product] = "Dress" then [Price] * 0.5 else 如果 [Product] = "Sweater" 那么 [Price] * 0.8 else 如果 [Product] = "Hoodie" 那么 [Price] * 0.8 其他 [价格]

3。 然后,单击 OK 按钮返回 Power Query 编者 窗口,您将获得一个包含所需数据的新列,请参见屏幕截图:

4。 最后点击 首页 > 关闭并加载 > 关闭并加载 将此数据加载到新工作表。

带 OR 逻辑的 If 语句

OR 逻辑执行多个逻辑测试,如果任何逻辑测试为真,则返回真实结果。 语法是:

= 如果逻辑测试 1 或逻辑测​​试 2 或 … 那么 value_if_true else value_if_false

假设,我有下表,现在,我想要一个新的列显示为:如果产品是“Dress”或“T-shirt”,那么品牌是“AAA”,其他产品的品牌是“BBB”。

1. 选择数据表,然后单击 Data > 从表/范围 去 Power Query 编者 窗口。

2. 在打开的窗口中,单击 添加列 > 自定义列,在打开 自定义列 对话框,请执行以下操作:

将新列的名称输入到 新列名称 文本框; 然后,将下面的公式输入到 自定义列公式 框。 = 如果 [Product] = "Dress" 或 [Product] = "T-shirt" 那么 "AAA" 否则“BBB”

3。 然后,单击 OK 按钮返回 Power Query 编者 窗口,您将获得一个包含所需数据的新列,请参见屏幕截图:

4。 最后点击 首页 > 关闭并加载 > 关闭并加载 将此数据加载到新工作表。

If 语句与逻辑

AND 逻辑在单个 if 语句中执行多个逻辑测试。 所有测试都必须为真才能返回真实结果。 如果任何测试为假,则返回假结果。 语法是:

= 如果逻辑测试 1 和逻辑测试 2 和 … 那么 value_if_true else value_if_false

以上面的数据为例,我想要一个新的列显示为:如果产品是“Dress”并且订单大于300,则给予原价50%的折扣; 否则保持原价。

1. 选择数据表,然后单击 Data > 从表/范围 去 Power Query 编者 窗口。

2. 在打开的窗口中,单击 添加列 > 自定义列。 在开 自定义列 对话框,请执行以下操作:

将新列的名称输入到 新列名称 文本框; 然后,将下面的公式输入到 自定义列公式 框。 = 如果 [Product] = "Dress" 并且 [Order] > 300 那么 [Price]*0.5 其他 [价格]

3。 然后,点击 OK 按钮返回 Power Query 编者 窗口,您将获得一个包含所需数据的新列,请参见屏幕截图:

4. 最后,您应该通过单击将此数据加载到新工作表中 首页 > 关闭并加载 > 关闭并加载.

具有 OR 和 AND 逻辑的 If 语句

好了,前面的例子我们就很容易理解了。 现在,让我们让它变得更难。 您可以组合 AND 和 OR 来形成您可以想象的任何条件。 在这种类型中,您可以在公式中使用括号来定义复杂的规则。

同样以上面的数据为例,假设我要新建一个列显示为:如果商品是“Dress”,订单大于300,或者商品是“Trousers”,订单大于300,则显示“A+”,否则显示“其他”。

1. 选择数据表,然后单击 Data > 从表/范围 去 Power Query 编者 窗口。

2. 在打开的窗口中,单击 添加列 > 自定义列。 在开 自定义列 对话框,请执行以下操作:

将新列的名称输入到 新列名称 文本框; 然后,将下面的公式输入到 自定义列公式 框。 =if ([Product] = "Dress" and [Order] > 300 ) 或者 ([Product] = "裤子" and [Order] > 300 ) 然后是“A+” 其他“其他”

3。 然后,点击 OK 按钮返回 Power Query 编者 窗口,您将获得一个包含所需数据的新列,请参见屏幕截图:

4. 最后,您应该通过单击将此数据加载到新工作表中 首页 > 关闭并加载 > 关闭并加载.

提示: 在自定义列公式框中,您可以使用以下逻辑运算符: = : 等于 :不等于 > :大于 >= :大于或等于 < :小于 热门特色: 查找、突出显示或识别重复项   |  删除空白行   |  合并列或单元格而不丢失数据   |   不使用公式进行四舍五入 ... 超级查询: 多条件VLookup  |   多值VLookup  |   跨多个工作表的 VLookup   |   模糊查询 .... 高级下拉列表: 快速创建下拉列表   |  依赖下拉列表   |  多选下拉列表 .... 列管理器: 添加特定数量的列  |  移动列  |  切换隐藏列的可见性状态  |  比较范围和列 ... 特色功能: 网格焦点   |  设计图   |   大方程式酒吧   |  工作簿和工作表管理器   |  资源库 (自动文本)   |  日期选择器   |  合并工作表   |  加密/解密单元格   |  按列表发送电子邮件   |  超级筛选   |   特殊过滤器 (过滤粗体/斜体/删除线...)... 前 15 个工具集:  12 文本 工具 (添加文本, 删除字符,...)   |   50+ 图表 类型 (甘特图,...)   |   40+ 实用 公式 (根据生日计算年龄,...)   |   19 插入 工具 (插入二维码, 从路径插入图片,...)   |   12 转化 工具 (小写金额转大写, 货币兑换,...)   |   7 合并与拆分 工具 (高级组合行, 分裂细胞,...)   |   ... 和更多

增强您的 Excel 技能 Kutools for Excel,体验前所未有的效率。 Kutools for Excel 提供 300 多种高级功能,可提高工作效率并节省时间。  单击此处获取您最需要的功能...

kte选项卡201905

阅读更多 免费下载... Office Tab 为 Office 带来选项卡式界面,让您的工作更轻松 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。 每天将您的工作效率提高50%,并减少数百次鼠标单击! 阅读更多 免费下载...  


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3