Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen

Commandbutton Caption ändern - Laufzeitfehler 1004 | Herbers Excel-Forum


Betrifft: Commandbutton Caption ändern - Laufzeitfehler 1004 von: Micha
Geschrieben am: 11.12.2009 09:46:13

Hallo,

ich habe ein Excel-Blatt mit mehreren Buttons (direkt auf dem Blatt, nicht per Formular).

Nun möchte ich die Beschriftung des Buttons dynamisch ändern, was ich zunächst mit folgendem Befehl versucht habe:

Sheets("Warenkorb").OLEObjects("CommandButton5").Object.Caption = "Test"

Dies resultierte allerdings in einem Laufzeitfehler 1004 (Am Blattschutz liegt's nicht - der ist deaktiviert).

Nach Recherche in diesem und anderen Foren habe ich noch einige andere Wege ausprobiert, allerdings alle erfolglos (in Klammer die jew. Fehlermeldung):

activesheeet.OLEObjects("commandbutton5").Object.Caption = "Test" (424 objekt erforderlich)
CommandButton5.Caption = "Test" (424 objekt erforderlich)
Sheets("Warenkorb").Shapes("CommandButton5").Object.Caption = "Test" (5 ungültiger Prozeduraufruf oder ungültiges Argument)

Nun bin ich (fast) ratlos - eine Vermutung habe ich noch, die ich aber nicht verifizieren konnte:

Möglicherweise liegt der Laufzeitfehler 1004 daran, dass die Commandbuttons mit den von mir verwendeten Nummern nicht existieren (Das Blatt hatte vorher jede Menge Buttons, ich habe allerdings massiv "entrümpelt"). Ich habe allerdings noch nicht herausgefunden, welche Nummern die Buttons tatsächlich haben - das Menü unter der rechten Maustaste hilft mir hier nicht weiter, und auch im VBA-Editor habe ich die Buttons nicht finden können.

Über sachdienliche Hinweise freut sich
Micha

  

Betrifft: funktioniert von: Tino
Geschrieben am: 11.12.2009 09:52:14

Hallo,
der Code
Sheets("Warenkorb").OLEObjects("CommandButton5").Object.Caption = "Test" funktioniert,
also gehe ich davon aus, dass es diesen CommandButton5 nicht gibt.

Gruß Tino


  

Betrifft: AW: Commandbutton Caption ändern - Laufzeitfehler 1004 von: {Boris}
Geschrieben am: 11.12.2009 09:52:46

Hi Micha,

das hier muss gehen ansonsten stimmt der Name CommandButton5 nicht:

Sheets("Warenkorb").OLEObjects("CommandButton5").Object.Caption = "Test"

Grüße Boris


  

Betrifft: AW: Commandbutton Caption ändern - Laufzeitfehler 1004 von: Rudi Maintaire
Geschrieben am: 11.12.2009 09:54:30

Hallo,

welche Nummern die Buttons 

Den Namen findest du in den Eigenschaften.

Gruß
Rudi


  

Betrifft: AW: Commandbutton Caption ändern - Laufzeitfehler 1004 von: Micha
Geschrieben am: 11.12.2009 10:21:14

Danke erst mal für die bisherigen Tipps!

@ Rudi:
Auch wenn die Frage vermutlich recht blöd ist - wo finde ich denn die Eigenschaften? Rechte Maustaste auf dem Button führt leider nur zu einem Kontextmenü, in dem ich alles mögliche einstellen kann, aber nicht den Namen ersehe.

Gruß
Micha


  

Betrifft: AW: Commandbutton Caption ändern - Laufzeitfehler 1004 von: Tino
Geschrieben am: 11.12.2009 10:28:57

Hallo,
aktivieren den Entwurfsmdus selektiere den Button und im Namensfeld
links oben kannst Du den Namen des Buttons erkennen.




Gruß Tino


  

Betrifft: AW: Commandbutton Caption ändern - Laufzeitfehler 1004 von: Micha
Geschrieben am: 11.12.2009 11:11:04

Hi,

da steht bei mir "Schaltfläche 2097".

Der Laufzeitfehler kommt aber immer, egal ob ich den Button mit "Commandbutton2097", "Commandbutton 2097", "Schaltfläche2097" oder "Schaltfläche 2097" aufrufe.



Gruß
Micha


  

Betrifft: AW: Commandbutton Caption ändern - Laufzeitfehler 1004 von: {Boris}
Geschrieben am: 11.12.2009 11:17:43

Hi Micha,

das ist ja auch ein Formular-Element.

Sheets("Warenkorb").Buttons("Schaltfläche 2097").Caption = "BlaBla"

Grüße Boris


  

Betrifft: AW: Commandbutton Caption ändern - Laufzeitfehler 1004 von: Micha
Geschrieben am: 11.12.2009 11:29:43

Hallo Rudi & Boris,

perfekt! Funktioniert (mit beiden Lösungswegen)!

Vielen Dank Euch!

Tätet Ihr mich noch aufklären, woran Ihr erkannt habt, dass es ein Formularelement ist (vermutlich an der Umrandung), und wieso das Element dann aber im VBA-Editor nirgends zu finden ist?

Danke & Gruß
Micha


  

Betrifft: AW: Commandbutton Caption ändern - Laufzeitfehler 1004 von: {Boris}
Geschrieben am: 11.12.2009 11:36:14

Hi Micha,

Formular = Schaltfläche
Steuerelement = CommandButton

Die Objekte sind nur ausgeblendet - aber dennoch vorhanden - siehe "Buttons".

Grüße Boris


  

Betrifft: AW: Commandbutton Caption ändern - Laufzeitfehler 1004 von: Micha
Geschrieben am: 11.12.2009 11:50:11

Hi Boris,

omg - ich dachte, ich kenne mich in VBA zumindest ein bisschen aus.
Je mehr ich z.B. hier im Forum lese, desto mehr reift die Gewissheit, dass dies offensichtlich nicht der Fall ist...

Danke nochmal für die Hilfe!

Gruß
Micha


  

Betrifft: AW: Commandbutton Caption ändern - Laufzeitfehler 1004 von: Rudi Maintaire
Geschrieben am: 11.12.2009 11:21:58

Hallo,
das ist ein Button aus Format!

Sheets(1).Shapes("Schaltfläche 2097").OLEFormat.Object.Caption = "Test"

Gruß
Rudi


Beiträge aus den Excel-Beispielen zum Thema "Commandbutton Caption ändern - Laufzeitfehler 1004"