seit langem bin ich freudiger Nutzer des Foren Archivs, aktuell sitze ich allerdings an einem Problem, welches per google nicht zu lösen ist.
Um die y-Achsen meines Diagramms automatisch skalieren zu können, habe ich einen ganz kurzen VBA Code geschrieben. Da sich die y-Werte wie zu erwarten mittels Formeln berechnen, erfolgt eine Überwachung per Calculate. Die Zellen P45 und P63 bilden dabei stets Unter- und Obergrenzen der y-Achse.
Kurze Übersicht:
Private Sub Worksheet_Calculate()
Call AchsenSkalierung
End Sub
Sub AchsenSkalierung()
Sheets("Yield Estimator").ChartObjects("Diagramm 5").Activate
ActiveChart.Axes(xlValue).MinimumScale = Sheets("Yield Estimator").Range("P45").Value
ActiveChart.Axes(xlValue).MaximumScale = Sheets("Yield Estimator").Range("P63").Value
End Sub
Klappt soweit wunderbar, allerdings ist das Diagramm mit einem Eingabetemplate verknüpft und die y-Werte von vielen Variablen abhängig. Ändern sich Daten im Eingabetemplate springt man nun immer wieder zum Diagramm, welches sich auf einem anderen Arbeitsblatt befindet.Wie kann ich das Aktivieren des Objects umgehen und die Skalierung der y-Achse im Hintergrund durchlaufen lassen?! Sprich das "Activate" umgehen?
Über Hilfe würde ich mich sehr freuen! Viele Grüße, Alex