如何在Excel Power Query中基于自定义字符串集排除行?
Excel 365 Power Query 动态排除自定义字符串实现方案
步骤1:加载并整理排除字符串列表
- 打开Excel,切换到数据选项卡,点击「获取数据」>「自表格/区域」,选中
Exclude工作表中的排除字符串区域(确保首行设为表头,比如列名取ExcludeWords),点击「确定」进入Power Query编辑器。 - 在编辑器中,将当前查询重命名为
ExcludeList;若列表有空行,点击「删除行」>「删除空行」清理数据;最后只保留包含排除字符串的列,多余列可右键删除。
步骤2:修改Input表的过滤逻辑
- 打开
Input表对应的Power Query查询(可通过「数据」选项卡>「查询 & 连接」面板找到),进入编辑器。 - 找到原硬编码过滤的步骤,替换为以下动态逻辑:
- 添加一个新步骤,获取排除字符串集合:
excludeWords = ExcludeList[ExcludeWords] - 修改过滤行的步骤,替换原硬编码条件:
filteredTable = Table.SelectRows(Source, each not List.AnyTrue(List.Transform(excludeWords, (word) => Text.Contains([Description], word, Comparer.OrdinalIgnoreCase))))说明:
Comparer.OrdinalIgnoreCase用于忽略大小写匹配,若需严格区分大小写,可删除该参数。
- 添加一个新步骤,获取排除字符串集合:
步骤3:输出结果并设置动态更新
- 完成逻辑修改后,点击Power Query编辑器左上角的「关闭并上载至」,选择输出到
Output工作表的指定位置。 - 后续用户只需在
Exclude工作表中添加、删除或修改排除字符串,右键点击查询选择「刷新」,Output表就会自动更新过滤结果,无需修改任何代码。
内容的提问来源于stack exchange,提问作者Dave
相关产品推荐
相关产品推荐

