首页 > 解决方案 > 带结构 Excel Vba

问题描述

如果我运行以下代码,它会出错

With pt
    .Field.ClearAllFilters
    .Field.CurrentPage = CustomerName
    .RefreshTable
End With

但我可以运行这段代码

With pt
    Field.ClearAllFilters
    Field.CurrentPage = CustomerName
    pt.RefreshTable
End With

点导致错误,谁能解释一下?非常感谢任何回复谢谢

标签: excelvba

解决方案


也许您可以从阅读VBA中With 语句With的文档中的工作原理中受益。报价:

With 语句允许您对指定对象执行一系列语句,而无需重新限定对象的名称。例如,要更改单个对象的多个不同属性,请将属性分配语句放在 With 控制结构中,引用该对象一次,而不是在每个属性分配中引用它。

请注意,它With适用于单个对象的属性。仅当您在代码中使用的属性实际存在于对象时,它才有效。

您可以使用对象浏览器查找对象的属性,或者再次查看数据透视表对象的文档,其中列出了对象的所有方法和属性。


推荐阅读