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.

Einen beliebigen Tab aktivieren über VBA
#1
Hallo liebe Leute!

Ich stecke gerade fest mit meinen Projekt, wo ich den "Custom Tab", den ich über UI Editor erstellt habe, nach Datei Eröffnung aktivieren möchte.
So lautet mein XML:

Code:
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="RibbonOnLoad">
<ribbon>
<tabs>
<tab id="customTab" label="Fieger" insertAfterMso="TabHome">
<group id="customGroup" label="CAD">
<button id="customButton3" label="Zeichnen" size="large" onAction="runsub" image="icon" />
</group>
<group id="grp_ribbon_oeffnen" label="EN 10077-1">
<button id="customButton4" label="Wärmekoeffizient" size="large" onAction="runsub2" image="uwert" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>

Hier kann man sehen dass der neue Tab "Fieger" heißt und den möchte ich nach öffnen Aktiviren.

Hab ein bisschen Gegooglet und hab diesen VBA Code gefunden:

Code:
Option Explicit
Public ribMeinRibbon As IRibbonUI
Sub RibbonOnLoad(ribbon As IRibbonUI)
Set ribMeinRibbon = ribbon
ribMeinRibbon.ActivateTab "Fieger"
   End Sub


Wenn ich einfüge, passiert halt nix

Kann mir jemand von euch helfen bitte???

Freue mich über Zuschriften!
Alex
Antworten Top
#2
Hallo,

Zitat:Option Explicit

hier fehlt mindestens eine Code-Zeile

Public ribMeinRibbon As IRibbonUI
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#3
Hallo

Kannst du mir sagen was fehlt?

Was muss ich schreiben?

Lg

Alex
Antworten Top
#4
Hallo,

ich habe ja geschrieben, es fehlt mindestens eine Codezeile.

Da in diesem Fall sozusagen ausgerechnet die Überschrift des Makros fehlt, es unten aber mit End Sub endet,
ist schon mal klar, es handelt sich um ein Makro, nicht um eine Funktion oder sowas.

Damit ist dann für mich allerdings auch schon das Ende der Fahnenstange erreicht, denn durch
die fehlende Überschrift kann ich nicht einmal feststellen, wo das Ding letztendlich abgelegt
werden muß, damit es auch vernünftig arbeiten kann.
Vielleicht gehst Du noch mal nach Google und schaust nach, ob es das Teil auch in heile gibt.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#5
Hi Peter,

also bei mir fehlt keine Zeile. In der 3. Zeile steht
Sub RibbonOnLoad(ribbon As IRibbonUI)
Gruß Uwe
Antworten Top
#6
Hallöchen,

das Sub alleine bewirkt auch nix. Irgendwer oder irgendwas muss es auch starten.

Was da fehlt, ist z.B. ein Workbook_Open - Makro, welches beim Öfnen der Datei das Sub aufruft und den ribbon übergibt. Falls Du das hast, ist dort eventuell was nicht in Ordnung. Hast Du doch, oder?
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#7
Hallo

Also, ich habe mein VBA Code in einen Modul eingefügt 

Kannst du mir verraten was soll ich genau in Woorksheet machen? 
Wie soll der VBA lauten?

Lg
Alex
Antworten Top
#8
Hallo ALex,

sorry, war ein Denkfehler. Das Makro wird beim Laden des Ribbons aufgerufen Smile
Du könntest ja mal eine MsgBox in dem Makro ausgeben, damit man sieht, ob das Makro überhaupt durchlaufen wird.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#9
Hallo,

Zitat:Kannst du mir verraten was soll ich genau in Woorksheet machen? 
Wie soll der VBA lauten?

Du liest nicht, was man Dir schreibt, oder?

Zitat:das Sub alleine bewirkt auch nix. Irgendwer oder irgendwas muss es auch starten.

Was da fehlt, ist z.B. ein Workbook_Open - Makro, welches beim Öfnen der Datei das Sub aufruft und den ribbon übergibt. Falls Du das hast, ist dort eventuell was nicht in Ordnung. Hast Du doch, oder?

Da steht zum Beispiel nichts von Worksheet.

Und Fragen beantworten ist auch nicht so richtig Dein Ding.

Also, ja, nach der Überschrift des vorhandenen Makros gehört es ziemlich sicher in ein "Allgemeines Modul". In sofern hast Du das auch
an der richtigen Stelle eingefügt.

Aber es fehlt ein Code, der das Makro in's Rennen schickt und da das Makro sich um Ribbons kümmern soll, ist es sehr wahrscheinlich,
daß dies aus dem Klassenmodul "DieseArbeitsmappe" heraus zu geschehen hat. Und dieser Teil fehlt eben. Ich bat Dich ja vorher schon
mal, daß Du noch mal nach Google rennst, um zu sehen, ob der Beginncode da auch irgendwo abgelegt wurde. Daß das so ist, ist auch
sehr wahrscheinlich, denn warum sonst hätte der Autor seinen Codeschnipsel veröffentlichen sollen.

André hatte auch nachgefragt, ob Du im Besitz dieses Codes bist.

Keine Antwort ist zwar auch eine Antwort, aber sie bringt weder Dir noch den Helfern die gewünschte Lösung.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#10
Hallo,

in Deinem Eröffnungsposting in diesen Thread hast Du gefragt

Zitat:Hier kann man sehen dass der neue Tab "Fieger" heißt und den möchte ich nach öffnen Aktiviren.

Das wäre zum Beispiel ein Fall für "DieseArbeitsmappe" und es wäre ein Workbook_Open-Makro,
mit dem es beim Öffnen der Datei automatisch angeschubst werden müßte.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top


Gehe zu:


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