在Power Query中,可以根据列值包括或排除行。 筛选列包含一个小筛选器图标, ( 应用
) 列标题中。 若要删除列筛选器,请选择列旁边的向下
,然后选择“ 清除筛选器”。
使用自动筛选筛选
使用自动筛选功能可查找、显示或隐藏值,并更轻松地指定筛选条件。 默认情况下,仅看到前 1,000 个非重复值。 如果消息指出筛选器列表可能不完整,请选择“ 加载更多”。 根据数据量,可能会多次看到此消息。
- 若要打开查询,请找到以前从Power Query 编辑器加载的查询,在数据中选择一个单元格,然后选择“查询>编辑”。 有关详细信息 ,请参阅在 Excel 中创建、加载或编辑查询。
- 选择要筛选的列旁边的向下
”。 - 清除 “ (全选) 复选框以取消选择所有列。
- 选择要筛选的列值的检查框,然后选择“确定”。
使用文本筛选器进行筛选
可以使用“ 文本筛选器” 子菜单按特定文本值进行筛选。
若要打开查询,请找到以前从Power Query 编辑器加载的查询,在数据中选择一个单元格,然后选择“查询>编辑”。 有关详细信息 ,请参阅在 Excel 中创建、加载或编辑查询。
选择包含要按其筛选的文本值的列旁边的向下

选择“文本筛选器”,然后选择相等类型名称“等于”、“D oes Not Equals”、“以开头”、“不以开头”、“结尾为”、“包含”和“不包含”。
在“ 筛选行 ”对话框中:
- 使用 “基本”模式 输入或更新两个运算符和值。
- 使用 高级模式 可输入或更新两个以上的子句、比较、列、运算符和值。
选择“确定”。
使用数字筛选器进行筛选
可以使用“ 数字筛选器 ”子菜单按数字值进行筛选。
若要打开查询,请找到以前从Power Query 编辑器加载的查询,在数据中选择一个单元格,然后选择“查询>编辑”。 有关详细信息 ,请参阅在 Excel 中创建、加载或编辑查询。
选择包含要筛选的数字值的列的向下
。选择“数字筛选器”,然后选择等于、不等于、大于、大于或等于、小于、小于或等于或之间的相等类型名称。
在“ 筛选行 ”对话框中:
- 使用 “基本”模式 输入或更新两个运算符和值。
- 使用 高级模式 可输入或更新两个以上的子句、比较、列、运算符和值。
选择“确定”。
使用日期/时间筛选器进行筛选
可以使用“日期/时间筛选器”子菜单按 日期/时间值进行筛选 。
若要打开查询,请找到以前从Power Query 编辑器加载的查询,在数据中选择一个单元格,然后选择“查询>编辑”。 有关详细信息 ,请参阅在 Excel 中创建、加载或编辑查询。
选择包含要筛选的日期/时间值的列的向下
。选择 “日期/时间筛选器”,然后选择相等类型名称: Equals、 Before、 After、 Between、 In the Next、 In the Previous、 Is Earliest、 Is Latest、 Is Not Not earliest、 Is Not Latest 和 Custom Filter。
提示 通过选择 “年”、“ 季度”、“ 月”、“ 周”、“ 天”、“ 小时”、“ 分钟”和 “秒”,可能会发现使用预定义筛选器更容易。 这些命令可立即工作。
在 “筛选行”对话框中:
- 使用 “基本”模式 输入或更新两个运算符和值。
- 使用 高级模式 可输入或更新两个以上的子句、比较、列、运算符和值。
选择“确定”。
筛选多个列
若要筛选多个列,请筛选第一列,然后为每个附加列重复列筛选器。
在下面的编辑栏示例中, 函数 Table.SelectRows 返回按 State 和 Year 筛选的查询。
按 null 或空白值筛选
当单元格中没有任何内容时,会出现 null 或空白值。 有两种方法可以删除 null 或空白值:
使用自动筛选
- 若要打开查询,请找到以前从Power Query 编辑器加载的查询,在数据中选择一个单元格,然后选择“查询>编辑”。 有关详细信息 ,请参阅在 Excel 中创建、加载或编辑查询。
- 选择要筛选的列旁边的向下
”。 - 清除 “ (全选) 复选框以取消选择所有列。
- 选择 “删除空 ”,然后选择“ 确定”。
此方法使用此公式 (检查列“Name”) 中的每个值:
Table.SelectRows(#"Changed Type", each ([Name] <> null and [Name] <> ""))
使用“删除空白行”命令
- 若要打开查询,请找到以前从Power Query 编辑器加载的查询,在数据中选择一个单元格,然后选择“数据>查询>编辑”。 有关详细信息 ,请参阅在 Excel 中创建、加载或编辑查询。
- 选择 “开始>删除行>”“删除空白行”。
若要清除此筛选器,请删除“查询设置”中“已应用步骤”下的相应步骤。
此方法使用以下公式检查整行作为记录:
Table.SelectRows(#"Changed Type", each not List.IsEmpty(List.RemoveMatchingItems(Record.FieldValues(_), {"", null})))
按行位置筛选
按位置筛选行类似于按值筛选行,只是根据行在查询数据中的位置而不是值来包含或排除行。
注意
指定范围或模式时,表中的第一个数据行是第 0 行 (0) ,而不是第一行 (1) 。 可以创建索引列,以在指定行之前显示行位置。 有关详细信息,请参阅 添加索引列。
保留顶部行
- 若要打开查询,请找到以前从Power Query 编辑器加载的查询,在数据中选择一个单元格,然后选择“查询>编辑”。 有关详细信息 ,请参阅在 Excel 中创建、加载或编辑查询。
- 选择“ 主页>”“保留行>”“保留顶部行”。
- 在“ 保留前几行 ”对话框中,在 “行数”中输入数字。
- 选择“确定”。
保留底部行
- 若要打开查询,请找到以前从Power Query 编辑器加载的查询,在数据中选择一个单元格,然后选择“查询>编辑”。 有关详细信息 ,请参阅在 Excel 中创建、加载或编辑查询。
- 选择“ 主页>保留行>”“保留底部行”。
- 在“ 保留底部行 ”对话框中,在 “行数”中输入数字。
- 选择“确定”。
保留行范围
有时,数据表派生自具有固定布局的报表。 例如,前五行是报表标题,后跟七行数据,后跟包含注释的行数不一。 但你只想保留数据行。
- 若要打开查询,请找到以前从Power Query 编辑器加载的查询,在数据中选择一个单元格,然后选择“数据>查询>编辑”。 有关详细信息 ,请参阅在 Excel 中创建、加载或编辑查询。
- 选择“ 主页>保留行>”“保留行范围”。
- 在“ 保留行范围 ”对话框中,输入 “第一行 ”和“ 行数”。 若要按照示例操作,请输入 6 作为第一行,输入 7 作为行数。
- 选择“确定”。
删除排名靠前的行
- 若要打开查询,请找到以前从Power Query 编辑器加载的查询,在数据中选择一个单元格,然后选择“数据>查询>编辑”。 有关详细信息 ,请参阅在 Excel 中创建、加载或编辑查询。
- 选择“ 开始>”“删除行>”“删除排名靠前的行”。
- 在“ 删除前几行 ”对话框中,在“ 行数”中输入数字。
- 选择“确定”。
删除底部行
- 若要打开查询,请找到以前从Power Query 编辑器加载的查询,在数据中选择一个单元格,然后选择“数据>查询>编辑”。 有关详细信息 ,请参阅在 Excel 中创建、加载或编辑查询。
- 选择“ 开始>删除行>”“删除底部行”。
- 在“ 删除底部行 ”对话框中,在“ 行数”中输入数字。
- 选择“确定”。
通过删除备用行进行筛选
可以按备用行进行筛选,甚至可以定义备用行模式。 例如,表在每个数据行后都有一个注释行。 你想要将奇数行保留 (1、3、5 等) ,但删除) (2、4、6 等的偶数行。
若要打开查询,请找到以前从Power Query 编辑器加载的查询,在数据中选择一个单元格,然后选择“数据>查询>编辑”。 有关详细信息 ,请参阅在 Excel 中创建、加载或编辑查询。
选择“ 开始>删除行>”“删除备用行”。
在“ 删除备用行 ”对话框中,输入以下内容:
- 要删除的第一行 从此行开始计数。 如果输入 2,则保留第一行,但删除第二行。
- 要删除的行数 定义模式的开头。 如果输入 1,则一次删除一行。
- 要保留的行数 定义模式的末尾。 如果输入 1,请使用下一行(即第三行)继续模式。
选择“确定”。
结果
Power Query的所有行都有一个要遵循的模式。 在此示例中,将删除奇数行,甚至保留行。