Table.TransformColumns 按列的值

Table.TransformColumns by Columns' Value

几个小时以来,我一直被 PowerQuery 上的某些问题困住,似乎找不到解决问题的方法。

上下文

我尝试使用“Table.TransformColumns”来改变table。

我的密码是

= Table.TransformColumns(table,{"A Only",
      each Table.SelectRows(_, (X)=> Text.Contains(X[Customer Search Term], [Word A]))})

错误消息是

Expression.Error: The column 'Word A' of the table wasn't found.

如果我把[Word A]改成"AAA",代码就可以正常处理了。

有谁知道如何使用列 [Word A] 而不是字符串“AAA”?

这里的问题是 Table.Transform 将转换应用于单个列,如果没有某种解决方法就无法引用其他列。

有关详细信息,请参阅此 post:

最简单的方法是定义一个新的自定义列(可以引用多个现有列),然后删除它所替换的现有列。

要在不需要额外列的情况下执行此操作,您可以使用链接 post 中的方法并使用行转换,其中其他列作为您正在转换的记录的一部分:

= Table.FromRecords(Table.TransformRows(table,
      (r) => Record.TransformFields(r, {"A Only",
          each Table.SelectRows(_, (X) => Text.Contains(X[Search Term], r[Word A]))
      })))

注意[Word A]前面的r。这是 Table.Transform.

缺少的上下文