我有一个VBA代码,可以根据单元格更改数据透视表报表过滤器。
使用字母数字输入一切正常。当输入是一个数字时,我收到一个错误。
以下是代码:
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':
应用程序定义或对象定义的错误。
答案 0 :(得分:1)
修剪价值可以解决您的问题。
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
答案 1 :(得分:0)
您需要在输入数字之前将Range(“SelectedProj”)格式设置为字符串,或者只需添加'。