Zeiteinheiten und automatische Formatierung der Y-Achse in Excel

4368
Matteo

Ich habe ein Diagramm mit Zeitwerten auf der vertikalen Achse (Y). Da sich die Werte stark ändern können, erfolgt die Formatierung der Neben- und Haupteinheiten der Achse automatisch.

Das Problem ist, dass Excel Werte auswählt, die nett sein könnten, wenn sie dezimal sind, aber bei der Verwendung von Zeiten nicht ideal sind.

ZB 0:00, 0:28, 0:57, 1:26, 1:55, 2:24, 2:52 (dies entspricht Schritten von 0,02 Dezimalstellen)

Bildschirmfoto

Gibt es eine Möglichkeit, eine automatische Skala zu haben, die bei Verwendung der Zeit auf der vertikalen Achse gut aussieht ?

1

1 Antwort auf die Frage

4
teylyn

Sie können VBA verwenden, um sicherzustellen, dass der Höchstwert beispielsweise immer eine volle Stunde beträgt und die Nebeneinheit 5 Minuten und die Hauptzeit 10 Minuten beträgt.

Das Makro kann sehr komplex werden, je nachdem, wie viel Sie automatisieren möchten. Viel einfacher wären vier Arbeitsblattzellen, in die Sie die gewünschten Min-, Max-, Major-, Minor- und Zeitwerte sowie die Diagrammaktualisierungen sofort eingeben können.

Ein Änderungsereignis in der Tabelle könnte beispielsweise so aussehen:

Option Explicit  Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("chrtSettings")) Is Nothing Then  With ActiveSheet.ChartObjects("Chart 1").Chart .Axes(xlValue).MinimumScale = Range("min") .Axes(xlValue).MaximumScale = Range("max") .Axes(xlValue).MajorUnit = Range("major") .Axes(xlValue).MinorUnit = Range("minor") End With   End If End Sub 

Und im Arbeitsblatt gibt es eine Reihe von Zellen (mit Bereichsnamen), in denen die Werte schnell festgelegt werden können