Vba 自动更新饼图
我有一个包含大量数据的工作表,我创建了一个透视表来生成饼图,如果我对源工作表数据进行筛选,我希望饼图能够更新。我不知道是否有办法在源表上过滤时自动更新饼图。例如,如果我创建了一个包含10个元素的透视表,并且我在源表中返回并在5个元素上应用了一个新的过滤器,那么我希望饼图能够使用新的过滤器自动更新,而无需创建新的透视表Vba 自动更新饼图,vba,excel,Vba,Excel,我有一个包含大量数据的工作表,我创建了一个透视表来生成饼图,如果我对源工作表数据进行筛选,我希望饼图能够更新。我不知道是否有办法在源表上过滤时自动更新饼图。例如,如果我创建了一个包含10个元素的透视表,并且我在源表中返回并在5个元素上应用了一个新的过滤器,那么我希望饼图能够使用新的过滤器自动更新,而无需创建新的透视表 Sub Macro1 () Cells.Select ActiveWorkbook.PivotCaches.Create(SourceType:=xlDat
Sub Macro1 ()
Cells.Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Alarmes!R1C1:R1048576C11", Version:=xlPivotTableVersion15).CreatePivotTable _
TableDestination:="Graphe DOS!R1C1", TableName:="Tableau croisé dynamique2" _
, DefaultVersion:=xlPivotTableVersion15
Sheets("Graphe DOS").Select
Cells(1, 1).Select
ActiveSheet.Shapes.AddChart2(201, xlColumnClustered).Select
ActiveChart.SetSourceData Source:=Range("'Graphe DOS'!$A$1:$C$18")
With ActiveChart.PivotLayout.PivotTable.PivotFields("Tranches")
.Orientation = xlPageField
.Position = 1
End With
'i'll be filtering on the SE column
With ActiveChart.PivotLayout.PivotTable.PivotFields("SE")
.Orientation = xlPageField
.Position = 1
End With
With ActiveChart.PivotLayout.PivotTable.PivotFields("Alarmes")
.Orientation = xlRowField
.Position = 1
End With
ActiveChart.PivotLayout.PivotTable.AddDataField ActiveChart.PivotLayout. _
PivotTable.PivotFields("Descriptifs"), "Nombre de Descriptifs", xlCount
End Sub
感谢您的时间和帮助您可以添加您想要的屏幕截图吗?对我来说,这很难理解,因为原始数据中的过滤器不应该更改透视表(或附在表上的图表),您的意思是刷新图表吗?如果是,,您可以使用
工作表\u change
事件对每次更改进行刷新。我有一个基于此的图表,我想刷新饼图,同时在过滤器上添加一个组件,如@Ibrahimatto,如果这些都是图片,您最好通过该选项重新上传,因为许多人不会/无法查看这些链接我试试看。我还不太熟悉堆栈溢出。