微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Excel - 在过滤器之后动态命名表格的左上角单元格

如何解决Excel - 在过滤器之后动态命名表格的左上角单元格

过滤表格时,行会合并,因此我要选择的位置会不断变化。我现在正在使用两个过滤器,所以我不确定如何动态命名每次位于顶部的单元格。

解决方法

这有点棘手 - 但正如 Scott 所说,关键是使用 SpecialCells - 和 xlCellTypeVisible 常量

您还必须让 Excel 知道您的数据从哪个偏移量开始 - 并考虑过滤器标题(如果有)。

如果您修改常量以适合您的示例,此代码应该对您有用。

最好在将来包含您自己的代码,以免我们猜测。

Public Sub Test()

    Const FilterHeaderRow As Integer = 1
    Const StartOfDataRows As Integer = 2
    Const DataOffset As Integer = StartOfDataRows - FilterHeaderRow
    
    Const CellFilteredLocation = 1
    
    Cells.SpecialCells(xlCellTypeVisible).Cells(StartOfDataRows,StartOfDataRows).Select
    Debug.Print Selection.Row ' ===> will only display second actual row
    
    ActiveSheet.AutoFilter.Range.Offset(DataOffset).SpecialCells(xlCellTypeVisible).Cells(CellFilteredLocation,CellFilteredLocation).Select
    Debug.Print Selection.Row ' ===> Actual first filtered row

End Sub

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。