AW: Diagramme feste Größe
01.04.2010 12:37:15
strodti
Hi Karin,
habe den "Fehler" gefunden.
Im code ist Diagramm1 und Diagramm2 vorgegeben. Ich habe nun je Datei und Arbeitsblatt mehrere Diagramme. Wie kann ich nun im Code zum Beispiel sagen, das nur die markierten Diagramme, eventuell nach Reihenfolge der Markierung angepasst werden sollen?
Ansonsten genau das, was ich suche.
Anbei der Code für andere VBA-Freaks:
Sub diagramme_flaechen_anpassen()
Dim chDiagramm1 As Chart, chDiagramm2 As Chart ' Variabeln für beide Diagramme als _
Diagrammobjekt
Dim shDiagramm1 As Shape, shDiagramm2 As Shape ' Variablen für beide Diagramme als _
Shape
Dim paDiagramm1 As PlotArea, paDiagramm2 As PlotArea ' Variablen für die Zeichnungsflä _
chen beider Diagramme
' Bildschirmaktualisierung aus
Application.ScreenUpdating = False
' beide Diagramme als Objekt zuweisen
Set chDiagramm1 = Worksheets("Tabelle1").ChartObjects(1).Chart
Set chDiagramm2 = Worksheets("Tabelle1").ChartObjects(2).Chart
' beide Diagramme als Shape zuweisen
Set shDiagramm1 = Worksheets("Tabelle1").Shapes(1)
Set shDiagramm2 = Worksheets("Tabelle1").Shapes(2)
' beide Zeichnungsflächen zuweisen
Set paDiagramm1 = chDiagramm1.PlotArea
Set paDiagramm2 = chDiagramm2.PlotArea
' Position und Größe der Diagrammfläche des 2. Diagramms anpassen
With shDiagramm2
.Top = shDiagramm1.Top
.Left = shDiagramm1.Left
.Height = shDiagramm1.Height
.Width = shDiagramm1.Width
End With
' Position und Größe der Zeichnungsfläche des 2. Diagramms anpassen
With paDiagramm2
.Top = paDiagramm1.Top
.Left = paDiagramm1.Left
.Height = paDiagramm1.Height
.Width = paDiagramm1.Width
End With
' Variablen leeren
Set chDiagramm1 = Nothing
Set chDiagramm2 = Nothing
Set shDiagramm1 = Nothing
Set shDiagramm2 = Nothing
Set paDiagramm1 = Nothing
Set paDiagramm2 = Nothing
' Bildschirmaktualisierung ein
Application.ScreenUpdating = True
End Sub
Vielen Dank.
Tobias