首页 文章

使用公式检查数据透视表的名称是否存在

提问于
浏览
0

我有一个报告,我正在构建包含数据透视表,其名称(即PivotTable1)在VBA代码中显式引用 .

我想在工作簿本身中包含基于公式的检查,其中存在数据透视表(基本上检查用户是否未更改表的名称或完全删除它) .

我使用以下解决方法来检查表是否存在使用其名称:

=NOT(ISERROR(INDEX(INDIRECT("NameOfTable"),1,1))))

任何人都可以使用原生Excel功能为枢轴提出类似建议吗?

1 回答

  • 0

    是否可以选择创建VBA用户定义函数?在这种情况下,我建议

    Public Function ExistPivot(PTName As String) As Boolean
    Dim WS As Worksheet, PT As PivotTable
    
        ExistPivot = False
        For Each WS In ActiveWorkbook.Worksheets
            For Each PT In WS.PivotTables
                If PT.Name = PTName Then
                    ExistPivot = True
                    Exit Function
                End If
            Next PT
        Next WS
    End Function
    

    并在工作表中将其用作 =ExistPivot("xxx") ,结果将为TRUE或FALSE

相关问题