隐藏数据透视表下方的不确定的空白行

时间:2020-11-02 23:41:56

标签: excel vba pivot-table

在这里,我又去了另一个似乎无法在任何地方找到的简单函数。 相反,我看到了其他相关的讨论/代码,但是它们比我需要的更为复杂。

我有三个数据透视表,它们通过切片器连接,因此当我选择一个项目时,所有这些数据都将在相同的参数中过滤。

我只想隐藏两个数据透视表之间的空白行,每行不包括1行以允许查看分隔。我尝试使用Recording宏,但是当我使用xlUpxlDown时,似乎无法期望相对引用模式对此有所帮助。 附件中的图片是将要隐藏的空白行的示例。

非常感谢您!

enter image description here

1 个答案:

答案 0 :(得分:0)

Sub HideBlanks()
    Dim nRow
    ' First, show all rows
    Cells.EntireRow.Hidden = False
    ' Then go from the last row to the third one,
    For nRow = ActiveCell.SpecialCells(xlCellTypeLastCell).Row To 3 Step -1
        ' check that several columns of that row are blank (Cells(nRow, 1) = "" And Cells(nRow, 2) = "" And Cells(nRow, 3) = "" )
        ' and also check that the row above is blank also (And Cells(nRow - 1, 1) )
        If Cells(nRow, 1) = "" And Cells(nRow, 2) = "" And Cells(nRow, 3) = "" And Cells(nRow - 1, 1) = "" Then
            ' If so, hide the row
            Cells(nRow, 1).EntireRow.Hidden = True
        End If
    Next nRow
End Sub