Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: mit VBA X-Achse von Chart anpassen

mit VBA X-Achse von Chart anpassen
24.04.2006 12:15:48
Chart
hallo zusammen
ich möchte mit VBA die x-achse von einem chart anpassen. dazu hab ich die aktion aufgezeichnet und etwas angepasst. das kürzeste was funktioniert seht ihr unten. ich hätte es jedoch gerne wenn möglich noch etwas kürzer aber das zweite beispiel funktioniert nicht. kann mir da jemand helfen?
besten dank und gruss
loca

Sub rescale_x_axis()
ActiveSheet.ChartObjects("Diagramm 1").Activate
ActiveChart.PlotArea.Select
With ActiveChart
.HasAxis(xlCategory, xlPrimary) = True
.HasAxis(xlValue, xlPrimary) = True
End With
ActiveChart.Axes(xlValue).Select
With ActiveChart.Axes(xlValue)
.MaximumScale = 170
End With
Selection.Delete
End Sub


Sub rescale_x_axis_test()
ActiveSheet.ChartObjects("Diagramm 1").Activate
ActiveChart.Axes(xlValue).MaximumScale = 170
End Sub

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mit VBA X-Achse von Chart anpassen
24.04.2006 12:38:08
Chart
Hallo Loca,
das was du in rescale_x_axis_test() versuchst, ist die Y-Achse xlValue!!
Hier ein Beispiel:
'======================================================

Sub rescale_x_axis_test()
ActiveSheet.ChartObjects("Diagramm 1").Activate
With ActiveChart
.Axes(xlValue).MaximumScale = 170 'Y-Achse!!!
.Axes(xlCategory).TickLabelSpacing = 10 'X-Achse!!!
End With
End Sub

'======================================================
Gruß
Solaiman
Anzeige
mit VBA Y-Achse von Diagramm anpassen
24.04.2006 13:38:23
Diagramm
hi solaiman
besten dank für deinen tip. leider kommt beim laufen lassen des makros bei der zeile .Axes(xlValue).MaximumScale = 170 die nachricht: die maximumscale eingeschaft des axis objektes kann nicht festegelegt werden. kann mir da jemand helfen?
besten dank und gruss

Sub rescale_y_axis()
ActiveSheet.ChartObjects("Diagramm 1").Activate
With ActiveChart
.Axes(xlValue).MaximumScale = 170
End With
End Sub

Anzeige
AW: liegt höchst wahscheinlich an dem Namen ...
24.04.2006 15:27:35
Solaiman
Hallo Ioca,
das liegt definitiv daran, daß du vorhin die Namen der Diagramm mit Code geändert hast und jetzt existiert keinen Diagramm mehr unter dem Namen "Diagramm 1".
Bei mir gehts!
Gruß
Solaiman
AW: liegt höchst wahscheinlich an dem Namen ...
24.04.2006 15:44:25
loca
hi solaiman
offensichtlich funktioniert die anpassung der skalierung nur, wenn das diagramm die x-achse anzeigt. bei meinem diagram hab ich die gelöscht. so wies unten steht funktionierts jetzt.
besten dank
loca

Sub Makro3()
ActiveSheet.ChartObjects("Diagramm 1").Activate
ActiveChart.HasAxis(xlValue, xlPrimary) = True
ActiveChart.Axes(xlValue).MaximumScale = 170
ActiveChart.Axes(xlValue).Delete
End Sub

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

X-Achse in Excel-Diagrammen mit VBA anpassen


Schritt-für-Schritt-Anleitung

Um die X-Achse in einem Excel-Diagramm mit VBA anzupassen, folge diesen Schritten:

  1. Makro erstellen: Öffne den VBA-Editor (ALT + F11) und füge ein neues Modul hinzu.

  2. Code eingeben: Kopiere den folgenden Code in das Modul:

    Sub rescale_x_axis()
       ActiveSheet.ChartObjects("Diagramm 1").Activate
       With ActiveChart
           .HasAxis(xlCategory, xlPrimary) = True
           .HasAxis(xlValue, xlPrimary) = True
       End With
       ActiveChart.Axes(xlValue).MaximumScale = 170
       Selection.Delete
    End Sub
  3. Diagramm auswählen: Stelle sicher, dass das Diagramm den Namen "Diagramm 1" trägt. Andernfalls musst du den Namen im Code anpassen.

  4. Makro ausführen: Führe das Makro aus, um die X-Achse anzupassen.

Zusätzlich kannst du die Y-Achse wie folgt anpassen:

Sub rescale_y_axis()
    ActiveSheet.ChartObjects("Diagramm 1").Activate
    With ActiveChart
        .Axes(xlValue).MaximumScale = 170
    End With
End Sub

Häufige Fehler und Lösungen

  • Fehler: "Die MaximumScale-Eigenschaft des Axis-Objekts kann nicht festgelegt werden."

    • Lösung: Überprüfe, ob die X-Achse im Diagramm angezeigt wird. Wenn die X-Achse gelöscht wurde, funktioniert die Anpassung nicht. Stelle sicher, dass du die Achse mit .HasAxis(xlCategory, xlPrimary) = True aktivierst.
  • Fehler: Diagrammname existiert nicht.

    • Lösung: Vergewissere dich, dass der Name deines Diagramms korrekt im VBA-Code angegeben ist. Ändere "Diagramm 1" entsprechend dem tatsächlichen Namen.

Alternative Methoden

Wenn du die X-Achse ohne VBA anpassen möchtest, kannst du dies auch manuell tun:

  1. Klicke mit der rechten Maustaste auf die X-Achse des Diagramms.
  2. Wähle "Achse formatieren".
  3. Unter "Achsenoptionen" kannst du die Skalierung anpassen.

Diese Methode ist einfach und erfordert kein Programmieren, eignet sich jedoch nur für einmalige Anpassungen.


Praktische Beispiele

Hier sind einige weitere nützliche VBA-Codes, die dir helfen, die X- und Y-Achsen effizient anzupassen:

  1. X-Achse skalieren:

    Sub scale_x_axis()
       ActiveSheet.ChartObjects("Diagramm 1").Activate
       ActiveChart.Axes(xlCategory).MinimumScale = 0
       ActiveChart.Axes(xlCategory).MaximumScale = 100
    End Sub
  2. X- und Y-Achse Werte zuweisen:

    Sub assign_x_y_values()
       ActiveSheet.ChartObjects("Diagramm 1").Activate
       With ActiveChart
           .SeriesCollection(1).XValues = Range("A1:A10") ' Werte für X-Achse
           .SeriesCollection(1).Values = Range("B1:B10") ' Werte für Y-Achse
       End With
    End Sub

Tipps für Profis

  • Nutze ActiveChart.Axes(xlCategory).TickLabelSpacing = 10, um die Abstände der Tick-Labels auf der X-Achse zu ändern.
  • Speicher deine Makros in einer Arbeitsmappe mit aktivierten Makros (.xlsm), um sie jederzeit wieder verwenden zu können.
  • Experimentiere mit den verschiedenen Eigenschaften der Axes-Objekte, um das Erscheinungsbild deiner Diagramme weiter anzupassen.

FAQ: Häufige Fragen

1. Wie kann ich die X-Achse eines Diagramms in Excel skalieren? Du kannst die X-Achse mit dem VBA-Befehl ActiveChart.Axes(xlCategory).MaximumScale = <Wert> skalieren.

2. Was ist der Unterschied zwischen xlCategory und xlValue? xlCategory bezieht sich auf die X-Achse, während xlValue die Y-Achse bezeichnet. Achte darauf, dass du die richtigen Parameter verwendest.

3. Kann ich die Achsenwerte auch manuell zuweisen? Ja, du kannst die Achsenwerte manuell anpassen, indem du mit der rechten Maustaste auf die Achse klickst und "Achse formatieren" wählst.

4. Welche Excel-Version benötige ich für die Verwendung von VBA? Die meisten modernen Excel-Versionen unterstützen VBA, darunter Excel 2010, 2013, 2016, 2019 und Microsoft 365.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige