有人可以帮我这个吗? 我正在尝试验证3列BU中的源数据 - 在范围验证数据中的行动 - 部门[BU - 开始行动 - 结束帐户 - 开始部门 - 结束部门](截图附件)。
BU是验证表中的单个列,但Act&部门列是范围列。我需要检查Range数据中是否存在BU-Act-Dept组合。 那么Power查询是否具有使用嵌套连接验证源数据的任何功能? 这需要在Excel电源查询中完成,而不是公式,因为验证范围文件有超过100万条记录。
答案 0 :(得分:1)
我不确定这是多么有效,但它原则上有效。
我假设您已将两个表都加载到查询编辑器中,其名称为Source
和Validation
。
首先,在Source
表中选择Validation
查询并合并,在Source[Unit] = Validation[BU]
上匹配左外连接。
合并后,展开除Validation[BU]
以外的所有列。这将为您提供包含更多行的表格,因为它会覆盖与Validation
对应的Source[Unit]
中的每一行。
现在您可以编写验证Status
列。添加列>自定义列:
= if [Account] >= [Beg Act] and [Account] <= [End Act] and
[Dept] >= [Beg Dept] and [Dept] <= [End Dept]
then "Valid" else "Invalid"
现在您已拥有此列,请按前三列分组,并在新自定义列Status
上取最大值。这应该会将您的表格缩减回原始大小,如果该行与Status
表中提取的任何条件相匹配,则在Validation
列中显示“有效”,否则为“无效”。< / p>