0

我正在尝试使用 vba 在 Excel 文件中的两个单独的工作表上创建两个数据透视图。我正在使用一系列图表对象将数据透视图放置在我想要的位置。此方法仅适用于其中一个数据透视图,它是代码中的第二个。

我尝试查找此内容,但我可以在网上找到的唯一错误是数据范围错误,据我所知,这不是问题...

Dim pivotchart_bar As Chart
Dim chart_rng As Range

Set chart_rng = Range("C10:G35")

With chart_rng
    Set pivotchart_bar = ws3.ChartObjects.Add(Left:=.Left, Top:=.Top, Width:=.Width, Height:=.Height).Chart
End With

With pivotchart_bar
    .ChartType = xlColumnClustered
    .SeriesCollection(1).Interior.Color = RGB(0, 188, 255)
    .SeriesCollection(2).Interior.Color = RGB(0, 219, 51)
    .HasTitle = True
    .ChartTitle.Caption = "=ws3!B1"
End With

上面的代码没有将图表放在 C10:G35 范围内。下面的代码确实将图​​表放在 B10:F35 范围内,这是正确的。它们是两个不同工作表上的两个图表,但代码应该几乎相同。

Dim pivotchart_donut As Chart
Dim chart_rng_2 As Range

Set chart_rng_2 = Range("B10:F35")

With chart_rng_2
    Set pivotchart_donut = ws4.ChartObjects.Add(Left:=.Left, Top:=.Top, Width:=.Width, Height:=.Height).Chart
End With

With pivotchart_donut
.ChartType = xlDoughnut
.ApplyDataLabels Type:=xlDataLabelsShowPercent
End With

我试过制作一张新表,我玩过这个范围,但我仍然不确定问题是什么。我已经玩了一个星期没有任何结果......任何帮助都会很棒!

4

0 回答 0