ich möchte dem Eigenschaftenfenster selbst die Objekte
zuweisen, die es anzeigen bzw. bearbeiten soll.
Ziel der Sache ist, daß ich auch dann Eigenschaften von
Shapes verändern kann, wenn diese in einer Gruppe
zusammengefaßt sind, ohne daß diese aufgelöst werden muß.
Ich muß also wissen, wie ich an das Eingenschaftenfenster
komme. Weiß jemand wie die Instanz heißt?
sorry, ich vergaß zu erwähnen, daß es sich bei den Schapes teilweise um ActiveX-Steuerelemente handelt. Wenn ich ein solches in der Präsenation plazieren, dann kann ich das Eigenschaftenfenster aufrufen und darin die Schnittstellenparameter des ActiveX sehen und ändern.
Jetzt ist es aber so, daß das ActiveX zusammen mit anderen Shapes, z.B. einer Linie oder Rechteck zusammen gruppiert werden. Habe ich eine solche Gruppe selektiert, dann steht das Eigenschaftenfesnter nicht mehr zur Verfügung. Ich versuche nun ein Makro zu schreiben, das mir aus der Selektion die ActiveX-Steuerelemente zusammensucht und dann das Eigenschaftenfenster mit diesen Objekten füttert und anzeigt.
Der Knackpunkt für mich ist wie ich von VBA aus auf das Eigenschaftenfenster von PPT zugreifen kann.
ja das ist dann wohl der richtige Weg. Dazu muß ich aber einen Automatismus entwickeln, der mir die Variablennamen, Größe und die Spezifikation (Wertebereich) gibt.
Hast Du eine Idee wie man das von der ActiveX-Schnittstelle abfragen kann?
das mit dem direkten Zugriff funktioniert, stimmt. Jetzt habe ich aber keine Standard-ActiveX, sondern andere, die neben den Standard-Variablen noch zusätzliche anbieten. Irgendwoher kennt PPT aber die vollständige Schnittstelle, denn wenn ich das Eigenschaftenfenster auf ein ActiveX öffne, dann erscheinen alle Parameter. Entweder kennt PPT das vom installieren der ActiveX her oder die Schnittstelle wird ausgelesen (wie auch immer). Und diese Möglichkeit möchte ich in VBA auch haben.
Der erste Schritt dahin wäre (glaube ich), daß ich eine Referenz auf das ActiveX erhalte. Wenn ich in VBA aber eine Referenz schreibe wie:
Dim myAX As AlarmX.AlarmX
Set myAX = slide(1).shape(1).OLEFormat.Object
MsgBox myAX.AlarmDetails
…dann akzeptiert das der Kompiler - wunderbar, aber beim Zugriff auf irgendeine Member (AlarmDetails) stürzt PPT ab.
Es ist irgendwie nicht so ganz leicht zu erklären, was ich möchte…
mit der oleobjects-auflistung lässt du dir alle activeX-steuerelemente ausgeben.
damit kannst du auch einzelne steuerelemente ansprechen und werte setzen
wie stürzt ppt ab? ohne fehlermeldung? kann man den wert überhaupt setzen?
nicht aufgeben!!
gruß
rasta
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Jo, PP stürzt einfach ab, ohne Fehlermedung! Das ist ein sehr seltsames Phänomen. Ich werde das mal auf einem anderen Rechner ausprobiereb; vielleicht habe ich auf meinem System eine merkwürdige Konstellation…