在Excel中更新数据源时,在电源查询运行后硬编码的值会错位

时间:2018-06-14 15:05:50

标签: excel powerquery

我有一张名为" COMPANIES"像这样:

Company    Type
Lafarge    Cement
Google     IT
Disney     Entertainment

然后将表加载到Power Query中并显示为表COMPANIES2

在表格COMPANIES2 视图中,我添加了一个包含硬编码文本的新列:

Company    Type           Country
Lafarge    Cement         France
Google     IT             US
Disney     Entertainment  US

现在回到表COMPANIES,添加了一个新行:

Company    Type
Lafarge    Cement
Toyota     Cars
Google     IT
Disney     Entertainment

当我刷新表COMPANIES2时,我得到了这个:

Company    Type          Country
Lafarge    Cement         France
Toyota     Cars           US 
Google     IT             <blank>
Disney     Entertainment  US

正如您所看到的那样,Google对美国的价值已经向上移动了。

我玩过COMPANIES表,例如切换一些行或重命名它们。最后,COMPANIES2表总是搞砸了。

有没有办法告诉Excel / Power Query保护同一位置的第二个表?也许我们可以告诉Power Query&#34;公司&#34;是ID字段,在此表中是唯一的吗?因此,当公司字段移动时,硬编码的任何新值都应该移动?

2 个答案:

答案 0 :(得分:0)

请参阅@ MarcelBeug对this earlier posted question的回答。他将此link to a good video that he made包括在内,以显示它是如何完成的。

答案 1 :(得分:0)

为了记录,我并非100%确定这实际上是理智的,但它似乎有效。

将COMPANIES2表作为连接加载到Power Query中。现在转到原始的COMPANIES2查询(没有&#34; Country&#34;列),将其与仅连接版本合并,并展开&#34; Country&#34;从它的列。

虽然这看起来像一个循环引用,但我认为它在实践中有效,因为PQ必须在刷新输出之前在Excel中的表上提取现有数据,因此它将维护您在Country列中添加的数据