我使用数据模型中的连接进行查询,然后进行一些测量并制作一些数据透视表到带有过滤字段的 Excel 工作表。
现在我想将我的数据透视表与 VBA 连接,以根据单元格中的下拉列表清除或选择所有 PVT 字段中的所有过滤器
Private Sub CommandButton1_Click()
Dim Password As String
Dim A As String
Dim PT As PivotTable
Dim PF As PivotField
Password = InputBox("Kindly Enter Password", "Hello")
If Password = Sheet1.Range("N2").Value Then
Sheet4.Visible = xlSheetVisible
Sheet4.Select
Sheet5.Visible = xlSheetVisible
Sheet5.Select
ThisWorkbook.Worksheets("PVT QTY").Activate
A = Worksheets("PVT QTY").Cells(1, 2).Value
For Each PT In ActiveSheet.PivotTables
** With PT.PivotFields("Location")**
PF.ClearAllFilters
.CurrentPage = A
End With
Next
Else
MsgBox "Password Is Incorrect! Kindly Try Again Or Back To M Adel ", vbCritical, "Wrong password"
End If
End Sub
但是我收到这个错误
所以我遇到了同样的问题并打印了数据透视表的数据透视字段。 我发现普通的数据透视表将打印该字段,但使用各种相关表的数据透视表将以以下格式打印它:[table_name].[PivotField]。这就是为什么当您只传递字段时它找不到该字段。