按行位置筛选表

Power Query 具有多个选项,可通过保留或删除这些行来根据表行的位置筛选表。 本文介绍所有可用的方法。

保留行

保留行集函数将从表中选择一组行,并删除不符合条件的任何其他行。

在以下两个位置可以找到 “保留行 ”按钮:

  • 在“ 开始 ”选项卡上的 “减少行 ”组中。

    “开始”选项卡上的“保留行”按钮。

  • 在表菜单上。

    在表菜单上保留行按钮。

注释

在 Power Query 窗口中间的数据预览部分中,可以看到表左侧行的位置。 每个行位置都由一个数字表示。 顶部行以位置 1 开头。

保留最前面几行

假设下表来自具有固定布局的系统。

初始示例表,其中列标题全部为文本数据类型,包含 7 行数据,然后是注释部分。

此报告始终包含七行数据,并且数据下方有一个包含未知行数的注释部分。 在此示例中,你只想保留前七行数据。 为此,请从表菜单中选择 “保留前几行 ”。 在“保留前几行”对话框中,在“行数”框中输入 7

“保留前几行”对话框。

此更改结果将生成您所需的输出表。 为列设置数据类型后,表将如下图所示。

用于保留顶部行的最终示例表,其中保留了七行数据,并将单位列设置为“Number”数据类型。

保留底部行

假设下表来自具有固定布局的系统。

用于“保留底行操作”的初始示例表。

初始示例表,其中 Column1、Column2 和 Column3 作为列标题,全部设置为 Text 数据类型,底部七行为数据行,以上为列标题行和未知数量的注释行。

此报表始终包含报表页末尾的七行数据。 在数据上方,报表包含一个包含未知行数的注释部分。 在此示例中,你只想保留最后七行数据和标题行。

为此,请从表菜单中选择 “保留底部行 ”。 在“保留底部行”对话框中,在“行数”框中输入 8

“保留底部行”对话框。

该操作的结果会生成 8 行,但是现在标题行也成为表格的一部分。

执行“保留底部行”作后的示例表,其中列标题行作为数据的一部分,然后是七行数据。

需要从表的第一行提升列标题。 为此,请从表菜单中选择“ 使用第一行”作为标题 。 为列定义数据类型后,将创建如下图所示的表。

“保留底部行”的最后一个示例表。

将第一行提升为列标题并保留七行数据后,保留底部行的最终示例表,然后将“单位”设置为数字数据类型。

详细信息: 提升或降级列标题

保留行范围

假设下表来自具有固定布局的系统。

“保留一段行”操作的初始示例表。

最初的示例表包含列(Column1、Column2 和 Column3),所有列都被设置为文本数据类型,并且表中包含列标题和七行数据。

此报表始终包含五行标题、标题下方的一行列标题、列标题下方的七行数据,以及其注释部分下方的不确定行数。 在此示例中,你想要在报表的标题部分之后获取八行,并且只获取这八行。

为此,请从表菜单中选择“ 保留行范围 ”。 在“保留行范围”对话框中,在“第一行”框中输入 6,在“行数”框中输入 8

“保留行范围”对话框。

与上一个用于保留底部行的示例类似,此作的结果提供了八行,其中列标题是表的一部分。 将删除定义的 第一行 上方的任何行(第 6 行)。

执行“保留行范围”作后的示例表,其中列标题行作为数据的一部分,然后是七行数据。

可以执行与“保留底部行”所述相同的操作,以提升表格第一行的列标题。 为列设置数据类型后,表将如下图所示。

用于保留行范围的最终示例表。

最终示例表,用于在将第一行提升为列标题后保留特定行范围,将“单位”列设置为“数字”数据类型,并保留七行数据。

删除行

此函数集将从表中选择一组行,将其删除,并保留表中的其余行。

在以下两个位置可以找到 “删除行 ”按钮:

  • 在“ 开始 ”选项卡上的 “减少行 ”组中。

    “开始”选项卡上的“删除行”按钮。

  • 在表菜单上。

    在表菜单上执行删除行操作。

删除前几行

假设下表来自具有固定布局的系统。

用于“删除前几行”的初始示例表。

用于删除包含列(Column1、Column2 和 Column3)的前几行的初始示例表都设置为“文本”数据类型、顶部标题行和底部的列标题行和 7 个数据行。

此报表始终包含表第 1 行到第 5 行的固定标题。 在此示例中,需要删除前五行并保留其余数据。

为此,请从表菜单中选择 “删除顶部行 ”。 在“删除前几行”对话框中,在“行数”框中输入 5

“删除前几行”对话框。

与前面的“保留底部行”和“保留行范围”的示例相同,此操作的结果是表格中包含列标题在内的八行。

执行“删除前几行”作后的示例表,其中列标题行作为数据的一部分,然后是七行数据。

可以执行与前面示例中所述相同的操作,将表的第一行设为列标题。 为列设置数据类型后,表将如下图所示。

删除前几行的最后一个示例表。

将第一行提升为列标题并将“单位”列设置为数字数据类型并保留七行数据后,删除前几行的最后一个示例表。

删除底部行

假设下表来自具有固定布局的系统。

删除底部行的初始示例表。

“删除底部行”的初始示例表,其中标题列全部设置为“文本”数据类型、7 行数据,然后是底部固定长度的页脚。

此报表始终包含一个固定部分或页脚,位于表的最后五行。 在此示例中,需要删除最后五行,并保留其余数据。

为此,请从表菜单中选择“ 删除底部行 ”。 在“删除前几行”对话框中,在“行数”框中输入 5

“删除底部行”对话框。

该更改的结果将生成您要查找的输出表。 为列设置数据类型后,表将如下图所示。

最终的示例表用于去除底部行,其中“单元”列设置为“数字”数据类型,并保留七行数据。

删除交替行

假设下表来自具有动态布局的系统。

移除交替行操作的初始示例表。

包含列标题并全部设置为文本数据类型的初始示例表,以及每一个其他数据行都包含关于其上方数据行的注释。

此报表的结构化方式是,你有一对行中的元素。 每个奇数行(1、3、5...)都包含所需的数据。 每一个偶数行,紧邻每个奇数行,包含有关每个记录的注释。 不需要批注,并且想要删除所有这些注释。

为此,请从“表格”菜单中选择删除备用行。 在 “删除备用行 ”对话框中,输入以下值:

  • 要删除的第一行 中,输入 2

    你想要从第二行开始计数。 将保留此 要删除的第一行 上方的任何行。

  • 要删除的行数 框中,输入 1

    在这里,开始定义用于删除行的模式。 找到第二行后,只想删除该特定行,因此指定只需删除一行。

  • 要保留的行数 框中,输入 1

    删除一行后,将保留下一行。 然后为下一行重新启动该过程。

删除备用行对话框。

该选择的结果将为您提供您正在寻找的输出表。 将数据类型设置为列后,表将如下图所示。

“删除交替行”操作的最终示例表,其中“单位”列设置为“数字”数据类型,并保留七行数据。