[英]Expression.Error: We cannot convert the value null to type Text. Details: Value= Type=Type
[英]Expression.Error: We cannot convert the value (Function) to type Logical
我正在尝试将用户的手动输入字段用作数据连接(称为 IKX)的过滤器。
以下是用户输入数据的示例:
买家代码过滤器 |
---|
104 |
800 |
我有一个表格,它应用了 power query 过滤器的代码格式:
买家代码过滤器格式 | 公式 |
---|---|
[BUYER_CODE] = 104 | IFERROR(IF(LEN(InputBuyerCodes[@[买家代码过滤器]])>0, "[BUYER_CODE] = " &InputBuyerCodes[@[买家代码过滤器]], ""),"") |
或 [BUYER_CODE] = 800 | IFERROR(IF(LEN(InputBuyerCodes[@[Buyer Code Filter]])>0, " or [BUYER_CODE] = " &InputBuyerCodes[@[Buyer Code Filter]], ""),"") |
然后是一个连接这些字段的表:
CONCAT 买家代码过滤器格式 | 公式 |
---|---|
[BUYER_CODE] = 104 或 [BUYER_CODE] = 800 | CONCAT(表2[买家代码过滤格式]) |
在电源查询中,我连接到“CONCAT BUYER CODE FILTER FORMAT”表,该表向下钻取到 [BUYER_CODE] = 104 或 [BUYER_CODE] = 800,称为 ConcatBuyerCodeFilterFormat
为了将过滤器应用于 IKX 数据,我添加了以下步骤:
=Table.SelectRows(来源,每个(ConcatBuyerCodeFilterFormat))
并得到错误
Expression.Error:我们无法将值“[BUYER_CODE] = 104 o...”转换为逻辑类型。 详细信息:Value=[BUYER_CODE] = 104 或 [BUYER_CODE] = 800 Type=[Type]
关于如何解决的任何想法?
看看这是否对您有帮助。 它显示了如何使用另一个变量中的过滤器定义进行过滤
let Source =#table({"Column1"}, {{"a"}, {"b"}, {"c"}}),
crit="[Column1] = ""a""",
#"Filtered Rows" = Table.SelectRows(Source, Expression.Evaluate("each "&crit))
in #"Filtered Rows"
综上所述,如果您从第一个过滤表开始,为什么不将其与更大的 data.table 合并并删除不匹配的行呢?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.