exzel
Goto Top

CommandButton per Mausklick benennen

Hallo zusammen,

hab' mehrere CommandButtons durchzunummerieren (über 200) und wollte deshalb wissen, ob es möglich ist per Mausklick die Commandbuttons zu benennen.

Es sollen die Eigenschaften Name und Caption verändert werden. Und zwar in aufsteigender Reihenfolge nummeriert. Die Namen gestalten sich so Platz_1, Platz_2, Platz_3... und die Captions 1,2,3...

Geht das per VBA-Script?

Gruß

Content-ID: 91405

Url: https://administrator.de/contentid/91405

Ausgedruckt am: 25.11.2024 um 04:11 Uhr

misterdemeanor
misterdemeanor 06.07.2008 um 22:44:59 Uhr
Goto Top
Hallo Exzel.

Du schreibst von CommandButtons. Demzufolge arbeitest Du mit UserForms...richtig?

In einem Deiner anderen Posts zu Deiner Platzverwaltung sieht es aber eher aus das Du diese komischen XLFormButtons verwendest. (Beziehe mich hier auf Den Thread mit dem sinnigen Namen Es ist zum Verzweifeln...

Wenn dem wirklich so ist könnte der einfachste Weg über VBA in etwa so aussehen:

Public Function SetTheButtonsUp()
  Dim wb As Workbook
  Dim ws As Worksheet
  Dim s As Shape
  Dim i As Integer
      'Hier entsprechend anpassen  
    Set wb = ActiveWorkbook
    Set ws = ActiveWorkbook.Sheets("Tabelle1")  
    i = 1
      'Alle Elemente im Sheet durchlaufen...  
    For Each s In ws.Shapes
        '...und schauen ob es sich um ein "xlButtonControl" handelt  
      If s.FormControlType = xlButtonControl Then
        'so und hier könnte es kniffelig werden. Hier mal der einfachste Weg.  
        s.Name = "Platz_" & i  
        s.TextFrame.Characters.Text = i
          'GGfls. noch zu einem eigenen Click-Handler verweisen  
        's.OnAction = "Platz_' & i ' & '_OnClick'"  
        i = i + 1
      End If
    Next
    Set ws = Nothing
    Set wb = Nothing
End Function

Naja, etwas primitiv...
aber könnte ja ein erster Ansatz für Dich sein.

BG, Felix -misterdemeanor-
Exzel
Exzel 15.07.2008 um 16:02:26 Uhr
Goto Top
Vielen Dank!

Muss den Code mal studieren face-smile


Gruß