Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Button per Makro umbenennen

Forumthread: Button per Makro umbenennen

Button per Makro umbenennen
21.12.2006 08:21:06
Michael
Liebe Profis!
Ich habe einen Button in einem Excelfile, den ich nur einmal brauche. Nach Benutzung löscht er sich selbst mit:
ActiveSheet.Shapes("CommandButton1").Select
Selection.Delete
Da ich den Button bei Neustart wieder brauche, habe ich mir damit beholfen:

Sub workbook_open()
ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False _
, DisplayAsIcon:=False, Left:=582, Top:=37.5, Width:=104.25, Height:= _
27.75).Select
End Sub

Nur wie bekomme ich die Umbenennung hin? Ich habe es schon mit dem Befehl Caption in allen möglichen Varianten probiert, funktioniert aber nicht. Eine Möglichkeit wäre noch, den Button zu verstecken und bei Neustart wieder aufzudecken, allerdings weiss ich nicht, wie das geht.
Danke für die Hilfe schon mal,
Michael
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Button per Makro umbenennen
21.12.2006 08:28:08
Heiko
Hallo Michael,
z.B. so:

Sub TTTT()
ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False _
, DisplayAsIcon:=False, Left:=582, Top:=37.5, Width:=104.25, Height:= _
27.75).Name = "NeuerName"
End Sub

Gruß Heiko
PS: Rückmeldung wäre nett !
Anzeige
AW: Button per Makro umbenennen
21.12.2006 11:13:23
Michael
Wenn ich es so mache, ändert er den Namen des Buttons und zeigt mir einen Laufzeitfehler bei den entsprechenden Zuweisungen zu CommandButton1. Ich wollte ja nur die Aufschrift auf dem Button ändern, die allerdings bleibt bei CommandButton1.
Allerdings habe ich es jetzt durch Verstecken gelöst. Trotzdem vielen Dank für die Unterstützung!
Gruss
Michael
Anzeige
AW: Button per Makro umbenennen
21.12.2006 12:38:08
Heiko
Hallo Michael,
dann muß du mal genauer sagen was du willst, Button umbenennen ist ja nicht ganz so eindeutig.
Button Name ändern.

Sub TTTT()
ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False _
, DisplayAsIcon:=False, Left:=582, Top:=37.5, Width:=104.25, Height:= _
27.75).Name = "NeuerName"
End Sub

Button Caption ändern.

Sub GGGG()
ActiveSheet.OLEObjects("NeuerName").Object.Caption = " Neue Caption"
End Sub

Gruß Heiko
PS: Rückmeldung wäre nett !
Anzeige
AW: Button per Makro umbenennen
21.12.2006 14:21:29
Michael
Super! Danke Heiko, jetzt kenne ich beide Möglichkeiten! Vielen Dank für die Hilfe.
gruss
Michael
AW: Button per Makro umbenennen
21.12.2006 08:33:50
Luschi
Hallo Michael,
wenn Du den Button nur einmal pro Sitzung brauchst, dann mach es doch so:
Private Sub CommandButton1_Click()
''mehrere Aktionen
Me.CommandButton1.Visible = False
End Sub
Private Sub Workbook_Open()
ThisWorkbook.Worksheets("Tabelle1").CommandButton1.Visible = True
End Sub
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Button per Makro umbenennen
21.12.2006 11:10:35
Michael
Danke, das Verstecken funktioniert wunderbar!!
Anzeige
Anzeige

Infobox / Tutorial

Button in Excel per Makro umbenennen


Schritt-für-Schritt-Anleitung

Um einen Excel-Button umzubenennen, kannst du ein Makro verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne dein Excel-Dokument und gehe in den Visual Basic for Applications (VBA) Editor. Dies kannst du tun, indem du ALT + F11 drückst.

  2. Füge ein neues Modul hinzu: Rechtsklick auf "VBAProject (DeinDateiname)", wähle "Einfügen" und dann "Modul".

  3. Gib das folgende Makro ein, um eine Schaltfläche zu erstellen und gleichzeitig ihren Namen zu ändern:

    Sub ButtonErstellenUndUmbenennen()
       Dim btn As OLEObject
       Set btn = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", _
           Link:=False, DisplayAsIcon:=False, Left:=582, Top:=37.5, Width:=104.25, Height:=27.75)
       btn.Name = "NeuerName"  ' Button-Namen ändern
       btn.Object.Caption = "Neue Caption"  ' Button-Beschriftung ändern
    End Sub
  4. Speichere das Makro, und schließe den VBA-Editor.

  5. Führe das Makro aus, um die Schaltfläche zu erstellen und ihren Namen zu ändern.


Häufige Fehler und Lösungen

  • Laufzeitfehler: Wenn du einen Laufzeitfehler erhältst, könnte es daran liegen, dass der Name des Buttons bereits vergeben ist. Stelle sicher, dass der Name, den du zuweist, einzigartig ist.

  • Button-Beschriftung bleibt unverändert: Wenn die Beschriftung des Buttons nicht aktualisiert wird, überprüfe, ob du die Caption nach dem Erstellen des Buttons änderst. Verwende den Befehl:

    ActiveSheet.OLEObjects("NeuerName").Object.Caption = "Neue Caption"

Alternative Methoden

Wenn du nur einmal pro Sitzung einen Button benötigst, kannst du ihn auch verstecken und bei Bedarf wieder anzeigen. Hier ist ein Beispiel, wie das funktioniert:

Private Sub CommandButton1_Click()
    ' Mehrere Aktionen
    Me.CommandButton1.Visible = False ' Button verstecken
End Sub

Private Sub Workbook_Open()
    ThisWorkbook.Worksheets("Tabelle1").CommandButton1.Visible = True ' Button anzeigen
End Sub

Diese Methode ist besonders nützlich, wenn du die Schaltfläche nicht jedes Mal neu erstellen möchtest.


Praktische Beispiele

Hier sind einige praktische Beispiele, wie du einen Excel-Button umbenennen und seine Eigenschaften ändern kannst:

  1. Button erstellen und umbenennen:

    Sub ButtonErstellen()
       ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1").Name = "MeinButton"
    End Sub
  2. Button-Beschriftung ändern:

    Sub ButtonCaptionAendern()
       ActiveSheet.OLEObjects("MeinButton").Object.Caption = "Klicke mich!"
    End Sub

Diese Beispiele zeigen, wie einfach es ist, eine Excel-Schaltfläche umzubenennen und ihre Eigenschaften anzupassen.


Tipps für Profis

  • Verwende aussagekräftige Namen: Achte darauf, dass die Namen deiner Buttons eindeutig und beschreibend sind, um Verwirrung zu vermeiden.

  • Nutze Fehlerbehandlung: Implementiere Fehlerbehandlungsmechanismen in deinen Makros, um Laufzeitfehler zu vermeiden. Dies kann durch On Error Resume Next und On Error GoTo 0 geschehen.

  • Dokumentation: Kommentiere deinen Code, um die Funktionsweise zu erklären. Das macht es einfacher, später Änderungen vorzunehmen oder den Code zu verstehen.


FAQ: Häufige Fragen

1. Wie kann ich die Beschriftung eines bestehenden Buttons ändern?
Verwende den folgenden Code, um die Caption eines bestehenden Buttons zu ändern:

ActiveSheet.OLEObjects("DeinButtonName").Object.Caption = "Neue Beschriftung"

2. Was ist der Unterschied zwischen dem Umbenennen eines Buttons und dem Ändern seiner Beschriftung?
Das Umbenennen eines Buttons ändert den internen Namen des Buttons, während die Änderung der Beschriftung die sichtbare Textanzeige auf dem Button betrifft.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige