Automatisierung Range Balkendiagramm
17.07.2017 13:49:17
heiko
ich habe ein Balkendiagramm erstellt mit 2 X-Achsen. Jetzt soll der Diagrammbereich per VBA angepasst warden, sobald sich die Anzahl der anzuzeigenden Zeilen ändert.
Dazu verwende ich folgenden Code (Ausschnitt):
Sub Chart_anpassen()
Dim Chart_MinScale As Double
Dim Chart_MaxScale As Double
Dim Chart_CrossesAt As Double
Dim Zielzelle As Double
Dim Endzeile As Double
Dim Startzeile As Double
Dim Prüfspalte As Double
Dim i As Double
Dim leer As Double
Prüfspalte = 3
Startzeile = 10
Endzeile = 0
i = 0
leer = 0
Chart_MinScale = Cells(3, 12).Value
Chart_MaxScale = Cells(4, 12).Value
Chart_CrossesAt = Cells(5, 12).Value
Endzeile = Cells(6, 12).Value
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.SetSourceData Source:=Range("Charter!$C$9:$G$" & Endzeile)
ActiveChart.Axes(xlValue, xlSecondary).MinimumScale = Chart_MinScale
ActiveChart.Axes(xlValue, xlSecondary).MaximumScale = Chart_MaxScale
ActiveChart.Axes(xlValue, xlSecondary).CrossesAt = Chart_CrossesAt
ActiveChart.Axes(xlValue).MinimumScale = Chart_MinScale
ActiveChart.Axes(xlValue).MaximumScale = Chart_MaxScale
ActiveChart.Axes(xlValue).CrossesAt = Chart_CrossesAt
Cells(1, 1).Activate
End Sub
Dies funktioniert soweit ganz gut. Wenn ich jetzt aber 4 oder weniger Zeilen im Balkendiagramm anzeigen möchte, dann vertauscht Excel X und Y-Achse.Frage: Wie kann ich das automatische Tauschen von x- und y-Achse unterbinden? Dazu habe ich z.B. folgenden Code gefunden: ActiveChart.PlotBy = xlColumns
Dies führt leider nicht zum Erfolg. Hat jemand eine Idee?
Danke
Heiko