2010-12-17 10 views
1

Gibt es eine Möglichkeit, das Label-Attribut einer Office 2007/2010-Menübandsteuerung in VBA zu lesen/abzurufen? Die einzigen exponierten Eigenschaften erscheinen als Tag, ID und Kontext.Verwenden der Label-Eigenschaft von Office Ribbon Control in vba

Ich versuche, die getLabel und getVisible Callbacks zusammen zu verwenden - lesen Sie die Beschriftung und bestimmen, ob ein Steuerelement angezeigt werden soll oder nicht. Ich habe versucht, die Eigenschaft Tag im getLabel-Callback zu setzen, aber der Code wird nicht kompiliert, da diese Eigenschaft dann schreibgeschützt ist.

Irgendwelche anderen Vorschläge, wie man diese Katze willkommen heiratet. Beachten Sie, dass ich ein dynamisches Menü nicht verwenden kann; das ist unter einem geteilten Knopf und muss dort bleiben. Danke im Voraus.

+0

Das "tumbleweed" Badge sollte umbenannt werden "Grillen ..." – downwitch

Antwort

0

Ich vermute, dass VBA keinen Zugriff auf die Anpassung der Ribbon-Benutzeroberfläche hat. Ich weiß, dass dies mit VSTO gehandhabt werden kann.

+0

Ich glaube nicht, dass das Problem etwas mit VBA vs VSTO zu tun hat, sondern mit der Tatsache, dass das Ribbon-Objekt diese Rückrufe nicht freilegt zueinander. Ich würde gerne einen Blick auf einige funktionierende VSTO-Code werfen, aber ich bezweifle, dass es das Ribbon-Objekt-Modell besser als VBA ändern kann. – downwitch

+0

Ich habe den ganzen Morgen darüber gelesen. Du hast recht ... es ist kein Problem mit VBA und VSTO. Vielleicht finden Sie Ihre Lösung unter dem folgenden Link: http://msdn.microsoft.com/en-us/library/ee390805(v=office.11).aspx – Chris

+2

Ich habe das schon einmal gesehen, aber es hilft nicht Etikettenlesung und Sichtbarkeitseinstellung zu kombinieren. Es scheint keine Möglichkeit zu geben, das Label zur Laufzeit zu lesen, geschweige denn, dass das Label selbst von getLabel gesetzt wurde – downwitch