Thema Datum  Von Nutzer Rating
Antwort
Rot CommandButton automatisch generieren und Makro hinterlegen
06.12.2019 00:39:52 Robert
NotSolved
06.12.2019 07:23:33 Torsten
NotSolved
06.12.2019 09:12:24 Gast66923
NotSolved
06.12.2019 10:33:18 Gast42670
NotSolved
06.12.2019 10:35:57 tscharl
*****
Solved
06.12.2019 12:18:47 Robert
NotSolved
06.12.2019 12:46:53 tscharl
NotSolved
06.12.2019 14:50:31 Robert
NotSolved
06.12.2019 17:12:51 tscharl
*****
Solved
06.12.2019 19:55:58 Robert
NotSolved
06.12.2019 23:55:41 tscharl
NotSolved
07.12.2019 23:42:05 Robert
NotSolved

Ansicht des Beitrags:
Von:
Robert
Datum:
06.12.2019 00:39:52
Views:
986
Rating: Antwort:
  Ja
Thema:
CommandButton automatisch generieren und Makro hinterlegen

Hallo zusammen,

der folgende Code soll mir diverse Buttons erstellen, ausgehend von Einträgen in einer Liste (welche immer neu generiert wird).
Dazu nimmt sich das Makro den Listeneintrag (Text), benennt jeden Button entsprechend dem Listeneintrag und soll an jedem Button noch ein Makro hinterlegen.
Sodass man beim "anklicken" des Buttons zu einem Tabellenblatt wechselt, welches den gleichen Namen hat wie der Listeneintrag.

Das Erstellen und Beschriften funktioniert. Mit der markierten Zeile (NewButton.OnAction ...) bekomme ich allerdings die Fehlermeldung "Die OnAction-Eigenschaft des Button-Objekts kann nicht festgelegt werden" - bin mittlerweile etwas am Verzweifeln...

Vielen herzlichen Dank im Voraus!

 

Sub generate_Buttons()

'define table for buttons
Set Sheet = ThisWorkbook.Worksheets("Sheet3")

'start values für references --> Cells(row,column)
Dim column As Variant
Dim row As Variant

column = 1 'Refferenz zu den (zu übernehmenden) Zellen
row = 2

'Dim Button As Variant
Dim NewButton As Object

Dim buttonHigh As Integer
Dim buttonWidth As Integer

Dim actualX As Integer
Dim actualY As Integer

buttonStart = 10 
buttonSpacing = 10 

buttonHigh = 20
buttonWidth = 150

actualX = 150 'Abstand zum linken Rand
actualY = buttonStart

' process last valued cell
lastRow = Sheet.Cells.SpecialCells(xlCellTypeLastCell).row

'error exception for empty table
If lastRow = Emtpy Then
        'bricht aktuelle Sub ab
    Else
        For actualRow = row To lastRow
            'generate a new button
            Set NewButton = Sheet.Buttons.Add(actualX, actualY, buttonWidth, buttonHigh)
                NewButton.Caption = Sheet.Cells(actualRow, column).Value
                
                Dim MethodeXY As Variant
                MethodeXY = Sheet.Cells(actualRow, column).Value

                NewButton.Font.Bold = True
                NewButton.OnAction = Sheets(MethodeXY).Select
                'Bei "Klick" soll das entsprechende Tabellenblatt angewählt werden
                
            'prepare for next generated button

            actualY = actualY + buttonHigh + buttonSpacing
        Next
End If
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot CommandButton automatisch generieren und Makro hinterlegen
06.12.2019 00:39:52 Robert
NotSolved
06.12.2019 07:23:33 Torsten
NotSolved
06.12.2019 09:12:24 Gast66923
NotSolved
06.12.2019 10:33:18 Gast42670
NotSolved
06.12.2019 10:35:57 tscharl
*****
Solved
06.12.2019 12:18:47 Robert
NotSolved
06.12.2019 12:46:53 tscharl
NotSolved
06.12.2019 14:50:31 Robert
NotSolved
06.12.2019 17:12:51 tscharl
*****
Solved
06.12.2019 19:55:58 Robert
NotSolved
06.12.2019 23:55:41 tscharl
NotSolved
07.12.2019 23:42:05 Robert
NotSolved