Excel VB 图表向导

问题描述

我通过一个宏创建了 3 个图表。使用 ChartWizard 方法,我将某些参数应用于图表。现在我想通过使用 (gallery:= "xILine,xIColumn") 来改变外观。无论我做什么,图表都不会改变那里的外观。它总是向我展示 3 个标准柱形图。我知道为每个图表编码一次片段并不是最好的解决方案,也许因为这个原因它不起作用...... 欣赏每一个想法,谢谢!

 Sub chart()
'Lege Bereich in Excel fest für Grafik 0
    Dim rng As Range
    Set rng = Range("C3:K13")

'Grafik mit verschiedenen Parametern erstellen per ChartWizard Funktion
    Set co = ActiveSheet.ChartObjects.Add(rng.Left,rng.Top,rng.Width,rng.Height)
    co.chart.ChartWizard Source:=Range("$U$3:$AF$3,$U$7:$AF$7,$U$9:$AF$9" _
        ),_
    gallery:=xIColumn,Format:=12,PlotBy:=xlRows,_
    CategoryLabels:=1,SeriesLabels:=0,HasLegend:=1
    co.chart.ChartColor = 26
    co.chart.SeriesCollection(1).Name = "Projektertrag"
    co.chart.SeriesCollection(2).Name = "Projektkosten"
    
'Lege Bereich in Excel fest für Grafik 1
    Dim rng1 As Range
    Set rng1 = Range("C15:K25")

'Grafik mit verschiedenen Parametern erstellen per ChartWizard Funktion
    Set co = ActiveSheet.ChartObjects.Add(rng1.Left,rng1.Top,rng1.Width,rng1.Height)
    co.chart.ChartWizard Source:=Range("$U$3:$AF$3,$U$23:$AF$23,$U$25:$AF$25" _
        ),_
    gallery:=xILine,HasLegend:=1
    co.chart.ChartColor = 26
    co.chart.SeriesCollection(1).Name = "Ergebnis kum. [CHF]"
    co.chart.SeriesCollection(2).Name = "Zielwert [CHF]"
    
'Lege Bereich in Excel fest für Grafik 2
    Dim rng2 As Range
    Set rng2 = Range("C27:K38")

'Grafik mit verschiedenen Parametern erstellen per ChartWizard Funktion
    Set co = ActiveSheet.ChartObjects.Add(rng2.Left,rng2.Top,rng2.Width,rng2.Height)
    co.chart.ChartWizard Source:=Range("$U$3:$AF$3,$U$35:$AF$35,$U$17:$AF$17" _
        ),HasLegend:=1
    co.chart.ChartColor = 26
    co.chart.SeriesCollection(1).Name = "Vorleistungen kum"
    co.chart.SeriesCollection(2).Name = "Vorleistungen"

End Sub

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)