Herbers Excel-Forum - das Archiv

Menüleiste - Fehler bei controls.Add

Bild

Betrifft: Menüleiste - Fehler bei controls.Add
von: Christoph
Geschrieben am: 04.10.2003 12:57:42
Hallo bestes Forum,
ich habe aus dem Archiv das folgende Beispiel: https://www.herber.de/mailing/088399h.htm übernommen, bekomme aber die folgende Fehlermeldung in der Zeile: (vollständiger Code siehe unten)
Set oPopUp = oBar.Controls.Add(msoControlPopup, before:=oBar.Controls.Count)
Laufzeitfehler '-2147467259 (80004005)':
Die Methode 'Add' für das Objekt 'CommandBarControls' ist fehlgeschlagen

Es liegt nicht an dem Code von Hans. Der selbe Fehler tritt immer auf bei dem Befehl ...Controls.Add(msoControlPopup, before:=oBar.Controls.Count). Auch mit anderen Beispieldateien aus dem Archiv.

Ich habe schon probiert, die Menüleiste zurückzusetzen. Unter Extras-Anpassen-Arbeitsblatt-Menüleiste ist der Button "zurücksetzen" aber deaktiviert.
Ebenso habe ich die "Excel.xlb" mal neu erstellen lassen.
Hier der Code:



Private Sub Workbook_Open()
Dim oBar As CommandBar
Dim oPopUp As CommandBarPopup
Dim oBtn As CommandBarButton
Call CmdDelete
Set oBar = Application.CommandBars("Worksheet Menu Bar")
Set oPopUp = oBar.Controls.Add(msoControlPopup, before:=oBar.Controls.Count)
oPopUp.Caption = "Projektstatus"
Set oBtn = oPopUp.Controls.Add
With oBtn
.Caption = "Budget Doppelblatt"
.OnAction = "a_bud_doppelblatt"
.Style = msoButtonCaption
End With
'...weitere PopUp's...
End Sub



Ich weiß echt nicht mehr weiter.
Kann mir jemand einen Tip(p) geben?
schon vielen Dank vorab
Gruß
Christoph

Bild

Betrifft: AW: Menüleiste - Fehler bei controls.Add
von: Hans W. Herber
Geschrieben am: 04.10.2003 13:04:50
Hallo Christoph,

ich kann mir nicht erlären wo der Fehler liegen soll. Die Beispielarbeitsmappe von der Excel-CD habe ich mal auf den Server gestellt. Teste bitte, ob es mit dieser funktioniert:
https://www.herber.de/bbs/texte/088399v.xls

gruss hans
Bild

Betrifft: AW: Menüleiste - Fehler bei controls.Add
von: Christoph
Geschrieben am: 04.10.2003 13:12:27
Hallo Hans,
vielen Dank füre deine schnelle Antwort, aber leider bekomme ich die gleiche Fehlermeldung wie zuvor. ich fürchte fast, ich hab mein Excel an der Stelle zerschossen...
Ist es im Normalfall denn so, daß der Button "zurücksetzen" unter "Anpassen" deaktiviert ist?
merci
Christoph
Bild

Betrifft: AW: Menüleiste - Fehler bei controls.Add
von: Hans W. Herber
Geschrieben am: 04.10.2003 13:18:04
Hallo Christoph,

die Zurücksetzen-Schaltfläche ist deaktiviert, wenn eine eingebaute Menüleiste nicht benutzerdefiniert verändert wurde, was bei der Arbeitsblattmenüleiste eher selten ist.

Ersetze im Code mal "(Worksheet Menu Bar)" mit (1)

gruss hans
Bild

Betrifft: leider nein...trotzdem vielen Dank
von: Christoph
Geschrieben am: 04.10.2003 13:29:31
Hi Hans,
leider bringt auch:
Set oBar = Application.CommandBars(1)
nicht den gewünschten Erfolg (gleicher Fehler). Wie gesagt, es liegt mit Sicherheit nicht an deinem Code. Ich hatte früher auch schon mal benutzerdefinierte Menüpunkte in der Menüleiste (mehr als Versuch und Spielerei). Aber jetzt, wo ich diese einsetzten will, hilft ja vielleicht wirklich nur 'ne Neuinstallation.
wie auch immer,
herzlichen Dank für deine Hilfe
schönes WE wünscht ein von diesem Forum begeisterter
Christoph
Bild

Betrifft: AW: leider nein...trotzdem vielen Dank
von: Hans W. Herber
Geschrieben am: 04.10.2003 13:37:30
Hallo Christoph,

noch ein Versuch, starte mal den nachfolgenden Code und probiers dann nochmal:



Sub Zuruecksetzen()
CommandBars(1).Protection = msoBarNoProtection
End Sub



gruss hans
Bild

Betrifft: Hurra - das war`s - vielen Dank
von: Christoph
Geschrieben am: 04.10.2003 13:44:30
Hallo Hans,
meine tiefe Verneigung
schönes WE
Gruß
Christoph
 Bild
Excel-Beispiele zum Thema " Menüleiste - Fehler bei controls.Add"
Fehlermeldung #NV ausblenden Fehlermeldung abfangen
Fehler in Workbook_Open-Prozedur abfangen Fehlermeldung #DIV/0! verhindern
Fehler entfernen Fehlermeldung abfangen und in sequentielle Datei schreiben
Fortlaufende Suche unter Vermeidung eines Laufzeitfehlers VBA-Fehlermeldungen auflisten
Alle Zellen mit der #BEZUG!-Fehlermeldung auswählen Zahlenstring mit Formel auslesen und Fehlermeldung verhindern