使用VBA更改数据透视表报表过滤器 [英] changing pivot table Report Filter with VBA

查看:321
本文介绍了使用VBA更改数据透视表报表过滤器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个VBA代码,可以根据单元格更改数据透视表报表过滤器.

I have a VBA code that changes the a pivot table Report Filter based on a cell.

对于字母数字输入,一切正常.如果输入的是数字,则会出现错误.

It all works fine with inputs that are alphanumeric. When the input is a number, I get an error.

这是代码:

Sub ProjSelect_PivotsUpdate()
    Dim Selected_Proj

    Selected_Proj = Worksheets("Parameters").Range("SelectedProj")
    ActiveSheet.PivotTables("PivotTable1").PivotFields("Project").ClearAllFilters
    ActiveSheet.PivotTables("PivotTable1").PivotFields("Project").CurrentPage = _
    Selected_Proj
End Sub

这是错误代码:

运行时错误"1004":

Run-time error '1004':

应用程序定义或对象定义的错误.

Application-defined or object-defined error.

推荐答案

修剪该值可以解决您的问题.

trimming the value would solve your problem.

Sub ProjSelect_PivotsUpdate()
    Dim Selected_Proj

    Selected_Proj = Worksheets("Parameters").Range("SelectedProj")
    ActiveSheet.PivotTables("PivotTable1").PivotFields("Project").ClearAllFilters
    ActiveSheet.PivotTables("PivotTable1").PivotFields("Project").CurrentPage =  Trim(Selected_Proj)
End Sub

这篇关于使用VBA更改数据透视表报表过滤器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆