Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: ---> Tab2HTML: Excel Tabellen ins Forum! <-
XY Diagramm zoomen und verschieben
zurück: VBA & Adobe Acrobat Distiller weiter: Word und Excel (2000 bis 2010): Als Emailanhang Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Tutorial Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
makrohard
Autodidakt


Verfasst am:
08. Feb 2008, 22:05
Rufname:

XY Diagramm zoomen und verschieben - XY Diagramm zoomen und verschieben

Nach oben
       Version: Office XP (2002)

Hier im Forum ist schon mal die Frage aufgetaucht, ob man in einem Diagramm zoomen könnte. Hier ein Programm mit dem dies möglich ist. Es funktioniert allerdings nur mit X/Y Diagrammen. Die Achsen müssen zudem die gleiche Spannweite aufweisen, d.h. die Differenz der Maxima und Minima müssen gleich sein, sonst wirds beim Zoomen verzerrt.

Wie funktioniert's?

Die Minima und Maxima der Achsen werden schrittweise verändert. Dadurch werden die Achsen gedehnt, gestaucht oder verschoben. Die Schrittweite wird auf die Spannweite der Achsen angepasst, damit um einen festen Maßstabswert vergrößert und verkleinert werden kann. Die Divisoren SensZoom und SensPan legen das Verhältinis der Zoom / Pan Schrittweite zu der Spannweite der Achsen fest. Der gepastete Code erwartet ein aktives Diagramm.


So ists gemacht:

Code:

Option Explicit

Const SensZoom As Integer = 10
Const SensPan As Integer = 20 

Sub SetAxis(IsZoom As Boolean, Xmin, Ymin, Xmax, YMax As Integer)
Dim Increment As Single

With ActiveChart
    If IsZoom = True Then
        Increment = (.Axes(xlValue).MaximumScale - .Axes(xlValue).MinimumScale) / SensZoom
    Else
        Increment = (.Axes(xlValue).MaximumScale - .Axes(xlValue).MinimumScale) / SensPan
    End If

    .Axes(xlCategory).MinimumScale = .Axes(xlCategory).MinimumScale + Increment * Xmin
    .Axes(xlCategory).MaximumScale = .Axes(xlCategory).MaximumScale + Increment * Xmax
    .Axes(xlValue).MinimumScale = .Axes(xlValue).MinimumScale + Increment * Ymin
    .Axes(xlValue).MaximumScale = .Axes(xlValue).MaximumScale + Increment * YMax
End With

End Sub



Aufgerufen wird der obere Programmteil mit einem der folgenden Befehle, um die entsprechende Aktion einmal auszuführen:

Code:

Call SetAxis(True, 1, 1, -1, -1) 'ZoomIn
Call SetAxis(True, -1, -1, 1, 1) 'ZoomOut
Call SetAxis(False, 0, -1, 0, -1) ' MoveUp
Call SetAxis(False, 0, 1, 0, 1) ' MoveDown
Call SetAxis(False, 1, 0, 1, 0) 'MoveLeft
Call SetAxis(False, -1, 0, -1, 0) 'MoveRight



Zum Download eine Arbeitsmappe, die ein Beispiel mit einem Diagramm zeigt. Es kann ein UserForm geöffnet werden, in der Code sowohl über Schaltflächen als auch über Tastatureingaben angesprochen wird.



ZoomPan.xls
 Beschreibung:
X/Y Diagramm zoomen und verschieben

Download
 Dateiname:  ZoomPan.xls
 Dateigröße:  52.5 KB
 Heruntergeladen:  539 mal



Zuletzt bearbeitet von makrohard am 09. Feb 2008, 15:14, insgesamt 3-mal bearbeitet
makrohard
Autodidakt


Verfasst am:
08. Feb 2008, 22:06
Rufname:


AW: XY Diagramm zoomen und verschieben - AW: XY Diagramm zoomen und verschieben

Nach oben
       Version: Office XP (2002)

Falls jemand Fragen dazu hat, bitte in einem neuen Thread in Excel - VBA und Makros öffnen und mir eine PN schreiben, damit ich per eMail benachrichtigt werde.
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen




Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel Auswertungen: Diagramm - Probleme mit automatischer Achsenformatierung 1 phlip2102 132 14. Apr 2010, 11:52
VBA_lerner Diagramm - Probleme mit automatischer Achsenformatierung
Keine neuen Beiträge Excel Auswertungen: Diagramm - "Schlange" in Skala (y-Achse) einsetzen 10 Hanspompom 529 28. Aug 2009, 12:06
tempo123455 Diagramm - "Schlange" in Skala (y-Achse) einsetzen
Keine neuen Beiträge Excel Hilfe: Geschweifte Klammer im Diagramm 0 Flo101985 538 04. Aug 2009, 11:02
Flo101985 Geschweifte Klammer im Diagramm
Keine neuen Beiträge Excel Auswertungen: Diagramm - Erkennt nicht genug Werte bei ''Datenbereich" 1 johnnytheknife 413 16. Sep 2008, 20:41
Zero Diagramm - Erkennt nicht genug Werte bei ''Datenbereich"
Keine neuen Beiträge Excel Auswertungen: 2-Dimensionale Tabelle im Diagramm in Reihe darstellen 3 rgraf 1843 10. Feb 2008, 13:47
rgraf 2-Dimensionale Tabelle im Diagramm in Reihe darstellen
Keine neuen Beiträge Excel VBA (Makros): Diagramm - Legende und DataTable formatieren möglich??? 2 Dana_Fox 1765 11. Jul 2007, 09:27
Dana_Fox Diagramm - Legende und DataTable formatieren möglich???
Keine neuen Beiträge Excel VBA (Makros): VBA Diagramm Name ändert sich durch Makro 18 Bandito23 3709 22. Jun 2007, 13:35
Bamberg VBA Diagramm Name ändert sich durch Makro
Keine neuen Beiträge Excel Auswertungen: dynamisches Zeitreihen Diagramm 2 Office Johnny 619 29. Mai 2007, 14:02
Gast dynamisches Zeitreihen Diagramm
Keine neuen Beiträge Excel Auswertungen: Diagramm mit bei dem man den chartbereich verändern kann? 3 Gast 615 03. Nov 2006, 11:47
Alto Diagramm mit bei dem man den chartbereich verändern kann?
Keine neuen Beiträge Excel Formeln: Vertikalen Zellbezug horizontal verschieben 5 womanizer 1446 23. Okt 2006, 13:30
AndyRhandy Vertikalen Zellbezug horizontal verschieben
Keine neuen Beiträge Excel VBA (Makros): Diagramm - Reihen festlegen & löschen 1 KOTRET 520 04. Sep 2006, 12:29
KOTRET Diagramm - Reihen festlegen & löschen
Keine neuen Beiträge Excel Auswertungen: Diagramm 1 katrina 521 29. Aug 2006, 12:14
Alto Diagramm
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Shiatsu Massage Wörrstadt