Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1796to1800
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makrozuweisung der Grafiken löschen

Makrozuweisung der Grafiken löschen
06.12.2020 10:10:41
Dieter(Drummer)
Guten Morgen VBA Spezialisten-/innen und einen allen erfeulichen Nikolaustag ...
Im Tabellenblatt2 sind 28 Grafiken (Shapes). Diese Grafiken haben alle eine Zuweisung zu einem Makro und mit Klick auf die Grafik wird ein Makro ausgelöst. Das funktioniert.
Ich suche einen Code, der in den 28 Grafiken alle zugewiesenen Codes löscht?!
Im Netzt habe ich leider keine VBALösung gefunden.
Mit der Bitte um Hilfe,
grüßt Dieter(Drummer)

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makrozuweisung der Grafiken löschen
06.12.2020 10:19:17
Beverly
Hi Dieter,
das geht ganz einfach so:
Sub OnActionLoeschen()
Dim shaShape As Shape
For Each shaShape In ActiveSheet.Shapes
shaShape.OnAction = ""
Next shaShape
End Sub


AW: Makrozuweisung der Grafiken löschen
06.12.2020 10:27:36
Dieter(Drummer)
Danke Karin für Rückmeldung und Code.
Leider bricht der Code ab, mit: shaShape.OnAction = "". Laufzeitfehler 1004, Anwendungs- oder objektdefinierter Fehler. Kann es sein, das es keien Shapes sind?
Die Grafiken haben alle den Namen Grafik 1 bis Grafik 28.
Hast Du noch eine Idee?
Gruß, Dieter(Drummer)
Anzeige
AW: Musterdatei anbei
06.12.2020 10:48:46
Beverly
Hi Dieter,
kann ich - auch in deiner hochgeladenen Mappe - nicht nachvollziehen: der Code jäuft problemlos durch.
Klicke zuerst auf dein eingefügtes Shape -&gt Msgbox 1 wird angezeigt.
Führe dann den Code OnActionLoeschen aus, klicke erneut auf dein Shape -&gt nichts passiert da OnAction-Zuweisung gelöscht wurde.
https://www.herber.de/bbs/user/142109.xlsm


Anzeige
AW: Musterdatei anbei
06.12.2020 11:38:31
Dieter(Drummer)
Hallo Karin,
in der jetzigen Datei von dir geht das. In meiner Datei nicht, da geht nur der neue Code von mir, dank deines Hinweises auf "OnAction". Muss wohl mit dem Code "Zuweisung" zu tun haben, den ich in meiner Datei nicht habe.
Hättest Du evtl noch einen Code, wie ich, wenn ich alle Grafiken markiere, die Markierung von 3 Optionsbuttons, OptionButton1 bis 3, auf der Tabelle2 die Markierung aufhebe, aber die Markierung der anderen Grafiken bleiben?
Wäre schön, wenn Du da noch eine Lösung hättest.
Gruß, Dieter(Drummer)
AW: Musterdatei anbei
06.12.2020 14:19:27
Beverly
Hi Dieter,
ich nehme an, du hast noch andere Shapes in deiner Mappe, welche die Funktionalität "On Action" nicht haben - deshalb bei dir der Fehler.
Zu deiner Frage: laufe in einer Schleife über alle Shapes, schreibe ihren Namen (außer dem der 3 OptionButtons) in ein Array und am Ende kannst du sie dann selektieren - nach diesem Prinzip:
ActiveSheet.Shapes.Range(DeinArray()).Select


Anzeige
AW: Danke Karin für den Hinweis und deine ...
06.12.2020 18:41:44
Dieter(Drummer)
... Hilfe. Werde es umsetzen.
Danke und einen schönen Abend.
Gruß, Dieter(Drummer)
AW: Habe Lösung für Markierung OptButton aus
06.12.2020 12:50:34
Dieter(Drummer)
Hallo Karin,
wenn ich per Tastatur 2x Alt+WDM eingebe, wird die Markierung der Optionsbutton entfernt und die anderen Grafik Markierungen bleiben, Es wid so der Entwurfsmodus mittels Sendkey "Alt+WDM" einmal aufgerufen und beim 2. mal ist Markierung raus.
Danke für deine bisherige Hilfe und
Gruß, Dieter(Drummer)
AW: Habe Lösung gefunden, Dank deines ...
06.12.2020 10:42:44
Dieter(Drummer)
Karin,
... in Sachen OnAction! Jetzt geht's:
Sub Grafik_Codes_aus() 'Alle Codes aus Grafiken raus
Dim sh  As Object
For Each sh In ActiveSheet.Shapes
If sh.Type = msoPicture Then
With sh
.OnAction = "" '2. Code: BildGrossKlein
End With
End If
Next sh
End Sub
Danke dir und noch einen schönen Tag.
Gruß. Dieter(Drummer)
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige