如何在Excel Power Query中实现指定条件的替换功能?
在Excel Power Query中实现指定条件的替换操作
要达成「当A列值为"aa"且B列值为23时,将B列值替换为对应行C列的值」的需求,可按以下步骤操作:
步骤1:导入数据到Power Query编辑器
- 选中你的数据表格,点击Excel顶部数据选项卡。
- 选择从表格/范围,确认数据包含表头后点击确定,进入Power Query编辑器。
步骤2:通过条件逻辑修改B列
这里提供两种实用方法:
方法一:可视化操作(适合新手)
- 点击顶部添加列选项卡,选择自定义列。
- 在弹出的对话框中,输入以下公式:
if [A] = "aa" and [B] = 23 then [C] else [B]
- 把自定义列命名为「新B列」,点击确定。
- 右键删除原B列,再将「新B列」重命名为「B」即可。
方法二:直接编辑M代码(适合熟悉Power Query的用户)
- 点击顶部视图选项卡,打开高级编辑器。
- 在现有代码中添加一个新步骤(假设之前的步骤是
#"Changed Type"):
#"Updated B Column" = Table.TransformColumns(#"Changed Type", {{"B", each if [A] = "aa" and _ = 23 then [C] else _}}),
- 将最后的
in语句指向这个新步骤,比如in #"Updated B Column"。 - 点击完成,就能看到修改后的结果。
最终效果
操作完成后,数据将变为:
| A | B | C |
|---|---|---|
| aa | 10 | 10 |
| das | 44 | 51 |
| fdd | 21 | 30 |
这样就精准实现了需求:仅在A列是"aa"且B列是23的行,将B列替换为C列的值,其余行保持原样。
内容的提问来源于stack exchange,提问作者Isaac Muhanga
相关产品推荐
相关产品推荐

