Herbers Excel-Forum - das Archiv
Diagrammgröße ändern

|
Betrifft: Diagrammgröße ändern
von: Andi
Geschrieben am: 27.11.2003 10:32:00
Liebe Leute,
in der Hoffnung, dass mein noch offener Thread
https://www.herber.de/forum/messages/343030.html
von vorgestern lediglich aus dem Fokus der geneigten Leserschaft gerutscht ist, probier' ich's einfach nochmal (ich hoffe mal, nach zwei Tagen geht das in Ordnung...)
Ich habe mir mittles Markrorecorder einen Code geschaffen, der mir ein Diagramm auf ein Tabellenblatt einfügt, was soweit auch gut funktioniert, bis auf das anpassen der Größe.
Der Recorder hat hierfür folgendes aufgezeichnet:
ActiveSheet.Shapes("Diagramm 7").ScaleWidth 1.28, msoFalse, _
msoScaleFromBottomRight
ActiveSheet.Shapes("Diagramm 7").ScaleHeight 1.44, msoFalse, _
msoScaleFromBottomRight
ActiveSheet.Shapes("Diagramm 7").ScaleWidth 1.18, msoFalse, _
msoScaleFromTopLeft
ActiveSheet.Shapes("Diagramm 7").ScaleHeight 1.25, msoFalse, _
msoScaleFromTopLeft
das funkioniert natürlich nicht, weil das Diagramm beim nächsten Mal ja nicht mehr "Diagramm 7" heisst. Aber wie kann ich das sonst machen? Ich hab schon versucht, statt "Diagramm 7" den Namen zu verwenden, den ich dem Diagramm per VBA zuweise, klappt aber auch nicht.
Im Endeffekt soll das Programm 20 verschiedene Diagramme auf 20 verschiedenen Sheets erzeugen, eine dynamische Lösung wäre also klasse.
Ich hoffe, das Problem einigermaßen klar formuliert zu haben, unter
https://www.herber.de/bbs/user/2167.xls
gibt's auch noch 'ne Beispielmappe.
Einen schönen Tag wünscht Euch
Andi

 |
Betrifft: AW: Diagrammgröße ändern
von: Jonas
Geschrieben am: 27.11.2003 10:33:49
Hi Andi,
probier mal statt dem Namen die Laufnummer des Diagramms, in etwa so:
ActiveSheet.Shapes(1).ScaleWidth 1.28, msoFalse, _
msoScaleFromBottomRight
lg, Jonas
Betrifft: Danke ...
von: Andi
Geschrieben am: 27.11.2003 11:13:22
... scheint wie gewünscht zu funktionieren.
Schönen Gruß
Andi
P.S.: Sorry an GerdW, den gleichen Tip hattest Du mit glaub' ich auch schon gegeben, ich wohl vorgestern nur zu verplant, ihn richtig anzuwenden.