termiman
Goto Top

Formen mit Makros in Word zuweisen

Hallo liebes Administratoren Team,

Ist es möglich in Word einer Form (Bsp. Trapez) ein Makro zuzuweisen?

Die Frage scheint eher banal....in Excel ist es ein einfacher rechtsklick face-smile

Vielleicht habt ihr ja eine Idee
unbenannt

Content-Key: 609535

Url: https://administrator.de/contentid/609535

Printed on: April 19, 2024 at 12:04 o'clock

Mitglied: 146189
146189 Oct 02, 2020 updated at 16:18:50 (UTC)
Goto Top
Moin.
Das sind sogenannte Shapes im Word-VBA-API und diese haben im Word Objektmodell keine programmatischen Events deswegen lassen sich an diese Objekte keine direkten Events koppeln.

Um das simulieren zu können müsstest du dir ein ActiveX-Control oder Form-Control zweckentfremden, da gibt es ja einige ContainerActiveX Objekte die sich dafür anbieten würden. Oder du fügst einen Mac-Button ein (STRG+F9) und gibst dort das auszuführende Makro an.
MarcoButton ThisMacro "Click to run this macro"

Wenn du hier eine interaktive Simulation vorhast würde ich aber nicht auf Word zurückgreifen sondern z.B. was plattformübergreifendes Benutzen ohne scheußliche Makros sondern direkt mit HTML5 und Canvas Objekten entwickeln.

G. w.
Member: Termiman
Termiman Oct 02, 2020 at 16:20:07 (UTC)
Goto Top
ach ok, super und danke für den Hilfestellung. Ich werde mich mal am WE damit befassen....face-smile
Member: Termiman
Termiman Oct 09, 2020 updated at 21:18:37 (UTC)
Goto Top
Ich habe das ganze jetzt in Excel übertragen und eine Prozedur gefunden. Jedoch besteht meine Herausforderung darin, sie auf alle Objekte logisch anzuwenden.

In meiner Liste werden es ca. 20 Objekte werden, die jeweils beim anklicken eingefärbt werden sollen. Nur müsste ich jetzt für jedes Objekte ein neues Makro schreiben um sie auseinander halten zu können. face-sad

Dieser Weg scheint sehr ineffizient zu sein. Vielleicht habt ihr noch einen kleinen Hinweis für mich.
unbenannt
Mitglied: 146189
146189 Oct 10, 2020 updated at 15:54:38 (UTC)
Goto Top
Dieser Weg scheint sehr ineffizient zu sein. Vielleicht habt ihr noch einen kleinen Hinweis für mich.
Nimm halt ein Array mit den Shape-Namen dann musst du den Code nicht x mal wiederholen, wäre ja auch Blödsinn.
for each shp in Array("Rechteck1","Rechteck2","Rechteck3")  
    ' .... hier mit 'shp' als  Laufvariable arbeiten  
Next