Wenn Sie ein Excel-Diagramm als Objekt erstellen, das in ein Arbeitsblatt eingefügt werden soll, wird die Größe des Diagrammobjekts automatisch auf eine von Excel ausgewählte Größe angepasst. Möglicherweise möchten Sie nicht, dass das Diagrammobjekt die von Excel festgelegte Größe hat. Möglicherweise möchten Sie, dass Ihre Diagrammobjekte immer eine Standardgröße haben, damit sie im Verhältnis zu Ihren Arbeitsblättern immer gleich aussehen.

Es gibt keine Möglichkeit, eine Diagrammobjektgröße anzugeben, während Sie das Diagramm erstellen. Sie können jedoch die Größe des Diagrammobjekts nach seiner Erstellung ändern, genauso wie Sie die Größe anderer grafischer Elemente Ihres Arbeitsblatts ändern können. Sie könnten ein Makro schreiben, um das Objekt in einer bestimmten Größe zu erstellen, dies würde jedoch einen Großteil der Flexibilität beseitigen, die den Excel-Tools zur Diagrammerstellung innewohnt. Wenn Sie beispielsweise die Größe des zu erstellenden Diagrammobjekts angeben, müssen Sie auch andere Merkmale angeben, z. B. den Diagrammtyp. Es ist einfacher, solche Merkmale über die Werkzeuge in der Multifunktionsleiste auszuwählen, als dies in einem Makro der Fall ist.

Sie können jedoch problemlos ein Makro erstellen, mit dem die Größe eines vorhandenen Diagrammobjekts geändert wird. Die Schlüsselbefehle eines solchen Makros würden darin bestehen, die Eigenschaften Breite und Höhe für das Diagrammobjekt zu ändern. In VBA werden diese Eigenschaften in Punkten angegeben. Wenn Sie also die Größe des Diagrammobjekts so ändern möchten, dass es 4 Zoll hoch ist, setzen Sie die Eigenschaft Höhe auf 288, was der Anzahl der Punkte in 4 Zoll (4 * 72) entspricht.

Das folgende Makro gibt ein Beispiel für eine Möglichkeit, alle Diagrammobjekte in einem Arbeitsblatt zu durchlaufen und sie auf dieselbe Größe zu bringen. Dieses spezielle Makro legt die Breite jedes Diagrammobjekts auf 4 Zoll und die Höhe auf 3 Zoll fest.

Sub ResizeCharts()

For j = 1 To ActiveSheet.Shapes.Count         If ActiveSheet.Shapes(j).Type = msoChart Then             ActiveSheet.Shapes(j).Width = 4  72             ActiveSheet.Shapes(j).Height = 3  72         End If     Next j End Sub

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.

Dieser Tipp (8526) gilt für Microsoft Excel 2007, 2010, 2013 und 2016.

Eine Version dieses Tipps für die ältere Menüoberfläche von Excel finden Sie hier: