gpt4 book ai didi

excel - 使用宏更改数据透视字段时出现运行时错误 '1004'.. 但只有一些值

转载 作者:行者123 更新时间:2023-12-04 21:06:46 26 4
gpt4 key购买 nike

我正在使用代码根据单元格的值更改仅一个枢轴的一个枢轴字段(该单元格包含文本,不是对另一个单元格的引用)。最奇怪的是,它几乎适用于我拥有的所有值(value)观,但不适用于所有值(value)观......

代码如下:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Sheets("Sheet2").Range("D1")) Is Nothing Then
Sheets("Sheet2").PivotTables("PivotTable1").PivotFields("Field1"). _
ClearAllFilters
Sheets("Sheet2").PivotTables("PivotTable1").PivotFields("Field1").CurrentPage _
= Sheets("Sheet2").Range("D1").Value
End If
End Sub

调试说问题是以下行
Sheets("Sheet2").PivotTables("PivotTable1").PivotFields("Field1").CurrentPage _=      Sheets("Sheet2").Range("D1").Value

并且错误显示:“运行时错误'1004'应用程序定义或对象定义错误”。

有人可以帮帮我吗?非常感谢!

p.s.包含用于更改数据透视字段的文本的单元格的值被另一个宏更改,该宏从数据透视中获取值,因此该值存在并且所有值的格式都相同,所以我无法弄清楚问题是什么...

最佳答案

不完全是专家,但经过一些研究,我建议您尝试以下代码:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim pt As PivotTable

If Not Intersect(Target(1, 1), Range("D1")) Is Nothing Then
Set pt = Me.PivotTables(1)
With pt
.RefreshTable
.PivotFields("Field1").CurrentPage = Range("D1").Text
End With
End If
End Sub


它可能会减慢这个过程!

关于excel - 使用宏更改数据透视字段时出现运行时错误 '1004'.. 但只有一些值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13876295/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com