Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Commandbuttonprogrammierung
#11
Hallo Eksa,
ich verstehe es noch immer nicht.
Es gibt viele Diagramme.
Mit der Überschrift "1. Offener Kinderbereich..." die Diagramme 11,19,13,4,1
"2. Offener Kinderbereich..." 12,20,14,5,2. Dann noch weitere mit 3. Offener..." bis 7. Offener....
Man könnte
1. 4 Diagramme (welche?) in 1/4 Größe gemeinsam darstellen und beim nächsten Klick wieder groß machen. Wenn dann aber ein anderer Button Sammlung offene... angeklickt wird, wird es problematisch.
2. 4 Diagramme (welche?) der Reihe nach Durchklicken, dann wären die anderen Buttons kein Problem.
3. Was ganz Anderes, was ich nicht weiß.
Am sinnvollsten erscheint mir Variante 2, dann müsste man aber festlegen, was die 4 Diagramme sind.

Also, sag mal, was Dir vorschwebt.
Gruß der AlteDresdner
Gruß der AlteDresdner (Win11, Off2021)
Antworten Top
#12
Hallo!

Ein Tipp, der leicht off topic ist.
Statt
Code:
Dias = Array(1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 19, 20) 'alle Dias

nehme ich, da ich schreibfaul bin:
Code:
Dias = [row(1:20)]

Damit erzeuge ich ein zweidimensionales Array (1 to 20, 1 to 1) mit den Werten 1 bis 20.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#13
Hallo Dresdner,

ich unterscheide zwischen Diagrammen und Grafiken.
Vielleicht liegt darin das Verständnisproblem.

Die Diagramme sind alle genau so angeordnet wie sie sein sollen.
Daran soll sich nichts ändern.

Ich habe in dem angehängte Dokument 4 Grafiken.
Diese heißen Grafik 1, Grafik 2, Grafik 3, Grafik 4.
Ich möchte diese 4 Grafiken (Nicht Diagramme) per Knopfdruck gleichzeitig ein- und ausblenden können.

Die 4 Grafiken befinden sich in H43 abwärts.

Danke auch an den anderen Tipp.

Grüße Eksa
Antworten Top
#14
Hallo,
Sub Makro2()
 With Worksheets("Diagramme").Shapes.Range(Array("Grafik 1", "Grafik 2", "Grafik 3", "Grafik 4"))
   .Visible = Not .Visible
 End With
End Sub
Gruß Uwe
Antworten Top
#15
(06.07.2016, 19:39)Eksamilo schrieb: Hallo Dresdner,
Die 4 Grafiken befinden sich in H43 abwärts.
Hallo Eksa,
nach dem Tipp mit H43 verstehe ich es auch (habe ich vorher nie gesehen) und kann zu Kuwers Beitrag nichts hinzufügen.
Zu dem anderen Tipp für 'Schreibfaule': Geht nur, wenn keine Lücken in der Zahlenreihe sind und die Reihenfolge stimmt.
Gruß der AlteDresdner
Gruß der AlteDresdner (Win11, Off2021)
Antworten Top
#16
Okay sorry für die ungenaue Erklärung Dresdner.
Wir habens fast geschafft.

Dadurch dass du Dresdner die diesen Teil eingebaut hast:

.ZOrder msoBringToFront

Werden alle Diagramme die angeklickt werden nach vorne gebracht.
Dieser Teil fehlt jedoch bei den Grafiken.
Somit rücken natürlich die Grafiken immer in den Hintergrund und lassen sich per Knopfdruck nicht vorholen.

Wo baue ich diesen Teil in den Code ein?

Liebe Grüße Eksa
Antworten Top
#17
Hallo Eksamilo,
wenn Du die 4 Grafiken irgendwo außerhalb des Sichtfeldes, aber auf dem Blatt und sichtbar untergebracht hast, werden sie jetzt an der gleichen Stelle wie die Diagramme nacheinander angezeigt. Beim nächsten Klick erhält die aktive Grafik die alte Position und die nächste wird angezeigt. Nach der letzten Grafik und nochmals Klick verschwindet auch diese letzte an die alte Position. Diesen Zustand sollte man vor dem Speichern auch erreichen, sonst bleibt die letzte Grafik immer da oben. Beim nächsten Klick geht alles von vorn los.
Ich hoffe, Deine Vorstellungen erraten zu haben...
Gruß der AlteDresdner


Angehängte Dateien
.xlsm   Überlegungen2.xlsm (Größe: 204,9 KB / Downloads: 2)
Gruß der AlteDresdner (Win11, Off2021)
Antworten Top
#18
Du hast es fast erraten.
Ich habe die Grafiken jetzt mal an den Standort gebracht an dem sie sein sollen.
Grafik 1 - 4 befinden sich also in dem Sichtfenster.
Wenn ich auf den Button "Sammlungen offene Fragen" klicke, soll folgendes passiert:

Klick: Grafiken 1- 4 werden gleichzeitig eingeblendet!
Klick: Grafiken 1- 4 werden gleichzeitig ausgeblendet!
Klick: Grafiken 1- 4 werden gleichzeitig eingeblendet!
Und so weiter.

Das funktionierte bisher auch super.

Das Problem ist jetzt folgendes:

Die Grafiken 1-4 sind im Sichtfenster.
Die Diagramme ebenfalls.
Bei den Diagramme steht im Code, dass sie bei Klick in den Vordergrund rücken.
Bei den Grafiken 1-4 nicht.

Dadurch werden zwar alle GRafiken gleichzeitig ein und ausgeblendet, bleiben aber im Hintergrund, also hinter den GRafiken.

Diese Ergänzung fehlt mir im Code der angehängten Datei.

Liebe Grüße Eksa


Angehängte Dateien
.xlsm   Prototyp Auswertungsprogramm.xlsm (Größe: 196,7 KB / Downloads: 2)
Antworten Top
#19
Hallo Eksa,
nun wird es wohl langsam. Tausche das Sub OKGraf mit dem nachfolgenden aus
Sub OKgraf()
With Worksheets("Diagramme").Shapes.Range(Array("Grafik 1", "Grafik 2", "Grafik 3", "Grafik 4"))
   .Visible = Not .Visible
   If .Visible Then .ZOrder msoBringToFront
End With
End Sub


VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 14 - mit VBAHTML 12.6.0

und dann sollte es gehen. Oder füge ganz einfach die zusätzliche Zeile ein (If .visible then ...)
Gruß der AlteDresdner
Gruß der AlteDresdner (Win11, Off2021)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste