如何创建 Power Query 自定义列并将 excel 公式插入最终 table 的每个单元格?

How do i create a Power Query custom column AND insert an excel formula into each cell of the final table?

我希望在创建 table 时会有一个功能齐全的 excel 公式。如果我尝试使用 "... each "=[@[Prog.]]" 将只插入文本而不是公式。

P.S.: 我是新手所以,如果这是基本的,请原谅。

据我了解,您可以在 Power Query 中创建 Excel 公式并将其传递给您的 Excel 工作表 但工作表不会自动重新计算This earlier post 解决了同样的问题。

我通过创建一个包含两列的 table 进行了尝试:"Column1" 和 "Column2",每列分别包含数字 1 和 2。然后,我将 table 加载到 Power Query 中并使用公式 "=" & Text.From([Column1]) & "+" & Text.From([Column2]) 创建了一个新列 "Custom"。 (说明一下,这里的=不是弹出新列对话框时已经填充的=,是附加的。)总之,我从那个公式得到这个table:

然后,当我单击 "Close and Load," 时,我的 Excel 工作表加载了以下内容:

注意它看起来就像文本,但在编辑栏中,它看起来像这样:

请注意 = 之前没有 ',所以它是一个公式。如果它只是文本,它将是 '=1+2 而不是 =1+2.

由于单元格不会自动重新计算,我不得不单击要更新的单元格,然后单击编辑栏,然后按回车键。这给了我这个:

我试过用F9手动重新计算,没用

另外...每次我刷新查询时,我的工作表都设置回仅是文本公式(即 =1+2),我不得不手动重新计算。每次刷新查询时都必须对很多单元格执行此操作真的很痛苦。

@Umut K 在 the earlier post 中发布了一个基于 VBA 的解决方法来触发全部刷新,但我认为你要求做的事情可能比你正在寻找的更麻烦。

以上答案是正确的,即公式不会自动重新计算,即使它们在单元格中是正确的。我发现的 workaround/trick 是使用 -Find/Replace 一步触发对每个单元格的重新计算。使用公式转到其中一个单元格;复制整个公式。打开 Find/Replace 对话框。在对话框的“查找内容”和“替换为”框中。单击全部替换。除了您所在的单元格之外的所有单元格都将重新计算。然后,退出你所在的单元格,它也会重新计算。

看似愚蠢,但确实有效。