Button Cation laesst sich nicht aendern

Tach Community,

folgende Problematik:

Ich versuche in Excel VBA ButtonTexte (captions) zu aendern.
der button mit namen " CommandButton1" existiert.

 Worksheets("tab1"). **CommandButton1**.caption = "neuer Button text"

das funktioniert praechtig.

Leider hole ich die Namen der Buttons auf dem Worksheet dynamisch und
packe sie in einen array. Und dann funktioniert obige zeile mit folgendem Programmcode nicht mehr. Wer kennt Abhilfe?

For Each **Button** In ButtonArr
 Worksheets("tab1"). **Button**.caption = "neuer Button"
 Next

GGf. stimmt der Typ der Variable nicht. Ich habe aber keine Ahnung
wie ich entsprechend wandeln kann.
weil das folgende funktioniert auch nicht:

 Dim ButtonName As String
 ButtonName = "CommandButton1"
 Worksheets("tab1"). **ButtonName**.caption = "neuer Button"

danke fuer die Hilfe

gruss

PixelKoenig

Hallo PK,

die Aufschriften auf den Buttons sollen alle gleich sein?

Wo sind die CommandButtons, in einer Useerform oder auf einem Tabellenblatt?

Gruß
Reinhard

hi,

nein… der text ist natuerlich auch dynamisch.
aber das ist nicht mein Problem.

die buttons befinden sich auf einem Tabellenblatt.

gruss

PixelKoenig

Hallo PixelKönig,

ausgehend davon, dass Dein Array wirklich die Buttons enthält, sollte das funktionieren:

For Each **oneButton** In ButtonArr
**oneButton**.Caption = "neuer Button"
 Next

Grüße
PerryRhodan

Hallo PK,

nein… der text ist natuerlich auch dynamisch.

„natürlich“? Weder habe ich eine Glaskugel noch kann ich sie bedienen

aber das ist nicht mein Problem.

Aha, sorry Sir, hab da wohl deine umfangreichen Informationen falsch gedeutet, verzeih meine Nachfrage.

die buttons befinden sich auf einem Tabellenblatt.

endlich mal was Brauchbares.

Sub tt()
Dim CB, Anz
For Each CB In ActiveSheet.OLEObjects
 If CB.Name Like "Command\*" Then
 Anz = Anz + 1
 CB.Object.Caption = "CB" & Anz
 End If
Next CB
End Sub

Gruß
Reinhard