多行标题和 Excel 2010 排序/过滤

多行标题和 Excel 2010 排序/过滤

我有一个电子表格,它使用 2 行来显示标题信息,并且某些列将 2 行合并为一个单元格。第一行中多个列合并在一起,但下面的第二行没有合并列。隐式过滤假设只有 1 行标题信息。排序有一个标题行复选框,但只能切换将第一行视为标题。

有没有办法让 Excel 将前两行作为标题?

答案1

尝试这个:

  1. 取消已合并的标题。
  2. 从第二行向下手动选择您的数据。
  3. 应用过滤器。
  4. 重新合并标题。

过滤器下拉菜单应保留在第 2 行。

答案2

您需要确保高级过滤器字段范围中的值设置为包含标题行下方的行。

您可以手动设置该值或使用宏来为您执行此操作。

例如,在我的电子表格中,我将第 1-3 行作为多行标题。我不断在下面添加数据行。以下宏将筛选字段范围设置为包括第 4 行 - 到电子表格上的最后一行。这确保任何排序都会将第 3 行视为标题(前提是您选中“我的数据包括标题”复选框)

(我将其合并到更复杂的宏的末尾,以确保字段范围属性在数据导入后始终是最新的 - 比每次都记住手动重新设置它更容易)

Sub selector()

Sheets("AESummary").Select
Sheets("AESummary").Activate

' find last row containing data in column A (column A will always be populated in this dataset)

Set WS = Worksheets("AESummary")
With WS
    Set LastCellC = .Cells(.Rows.Count, "A").End(xlUp)
        LastCellRowNumber = Application.WorksheetFunction.Max(LastCellC.Row) + 1
   End With

' set the filter Field Range value to include Row 4 to the last populated row in the worksheet

        Rows("4:" & LastCellRowNumber).AdvancedFilter Action:=xlFilterInPlace, Unique:=False


End Sub

答案3

嗯,迟做总比不做好

从最后一个标题行到最后一个表格行定义一个本地(工作表)名称“数据库”。即:

公式 » 名称管理器 » 新建 » 名称:数据库,范围:{工作表名称},引用:{选择所有表并手动更改第一个单元格的行}

答案4

遗憾的是,XLS 2016 仍然无法处理此 OOB。还有另一种解决方法,它也适用于以前的版本:

用空行将最后一个标题行与其他标题行分开,然后隐藏这一行。然后 XLS 就可以毫无困难地将这一行识别为标题。

相关内容