Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Diagrammgröße per VBA absolut angeben

Forumthread: Diagrammgröße per VBA absolut angeben

Diagrammgröße per VBA absolut angeben
09.10.2002 09:12:03
beckersbest
Guten Morgen Excel-Experten,

da ich ein Diagramm aus einer Tabelle mit variabler Anzahl an Einträgen generiere, ist es notwendig, dass ich wegen der Legende die Diagrammgröße per VBA anpasse. Leider habe ich bisher nur die Möglichkeit, dieses über folgenden Code zu ändern:

Allerdings hilft mir die prozentuale Änderung nicht weiter, ich möchte gerne eine absolute Größe angeben, sinngemäß

ActiveSheet.Shapes("Diagramm 3").AbsoluteHeight 200, msoFalse, ScaleFromTopLeft

Gibt es dafür eine Lösung?

Gruß und Danke im Voraus
Thorsten Becker

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Diagrammgröße per VBA absolut angeben
09.10.2002 09:48:13
Ralf Sögel
ActiveSheet.Shapes("Diagramm 1").Height = 200
ActiveSheet.Shapes("Diagramm 1").Width = 200
Anzeige
;
Anzeige

Infobox / Tutorial

Diagrammgröße in Excel per VBA absolut angeben


Schritt-für-Schritt-Anleitung

Um die Größe eines Diagramms in Excel mittels VBA absolut anzugeben, kannst Du die folgenden Schritte befolgen:

  1. Öffne den VBA-Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Füge ein neues Modul hinzu:

    • Klicke im Projekt-Explorer mit der rechten Maustaste auf dein Projekt und wähle Einfügen > Modul.
  3. Gib den VBA-Code ein:

    • Füge den folgenden Code in das Modul ein:
    Sub DiagrammGroesseAnpassen()
       Dim diagramm As Shape
       Set diagramm = ActiveSheet.Shapes("Diagramm 1") ' Ändere den Namen entsprechend
    
       diagramm.Height = 200 ' Höhe in Punkten
       diagramm.Width = 200 ' Breite in Punkten
    End Sub
  4. Führe das Makro aus:

    • Schließe den VBA-Editor und gehe zurück zu Excel.
    • Drücke ALT + F8, wähle DiagrammGroesseAnpassen und klicke auf Ausführen.

Jetzt sollte das Diagramm die gewünschte absolute Größe haben.


Häufige Fehler und Lösungen

  • Fehler: "Shape not found":

    • Überprüfe, ob der Name des Diagramms korrekt eingegeben wurde. Du kannst den Namen im Auswahlbereich von Excel prüfen.
  • Fehler: Diagrammgröße ändert sich nicht:

    • Stelle sicher, dass das Diagramm nicht gesperrt oder geschützt ist. Überprüfe auch, ob Du die richtigen Maßeinheiten verwendest.

Alternative Methoden

Eine alternative Methode zur Anpassung der Diagrammgröße ist die Verwendung der Eigenschaften Top, Left, Height und Width:

With ActiveSheet.Shapes("Diagramm 1")
    .Top = 50 ' Abstand vom oberen Rand
    .Left = 100 ' Abstand vom linken Rand
    .Height = 200
    .Width = 200
End With

Diese Methode erlaubt es Dir, das Diagramm an eine spezifische Position zu verschieben und gleichzeitig die Größe zu ändern.


Praktische Beispiele

Hier sind einige praktische Beispiele, wie Du die Diagrammgröße anpassen kannst:

  1. Ein Diagramm zentrieren:

    Sub DiagrammZentrieren()
       Dim diagramm As Shape
       Set diagramm = ActiveSheet.Shapes("Diagramm 1")
    
       With diagramm
           .Top = (ActiveWindow.Height - .Height) / 2
           .Left = (ActiveWindow.Width - .Width) / 2
       End With
    End Sub
  2. Die Größe mehrerer Diagramme anpassen:

    Sub MehrereDiagrammeAnpassen()
       Dim diagramm As Shape
       For Each diagramm In ActiveSheet.Shapes
           If diagramm.Type = msoChart Then
               diagramm.Height = 300
               diagramm.Width = 300
           End If
       Next diagramm
    End Sub

Tipps für Profis

  • Nutze Variablen für Diagrammnamen, um den Code flexibler zu gestalten.
  • Experimentiere mit Relativen Größen, um die Anpassung zu automatisieren.
  • Verwende Application.ScreenUpdating = False und True, um die Ausführungsgeschwindigkeit zu erhöhen, wenn Du mehrere Diagramme bearbeitest.

FAQ: Häufige Fragen

1. Wie kann ich die Größe eines Diagramms dynamisch anpassen?
Du kannst die Größe eines Diagramms basierend auf den Daten in einer Tabelle anpassen, indem Du die Höhe und Breite im VBA-Code entsprechend änderst.

2. Funktioniert dieser Code in allen Excel-Versionen?
Ja, der Code sollte in den meisten modernen Excel-Versionen (Excel 2010 und höher) funktionieren. Achte darauf, dass die VBA-Syntax korrekt ist.

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