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

Button bei 1. Klick rot, bei 2. Klick grün

Forumthread: Button bei 1. Klick rot, bei 2. Klick grün

Button bei 1. Klick rot, bei 2. Klick grün
13.05.2004 14:01:31
Ralf
Hi,
ich würde erne eine Button haben für folgende Funktion:
Beim Start des Formulars ist er grün und es steht "Freigabe" drauf. Dann beim Klicken soll er auf rot wechslen und es soll "sperren" draufstehen.
Wenn ich dann wieder Klicke wird er wieder grün und es steht wieder "Freigabe" drauf.
Freigabe bedeuted dass er das "Frame2" freigeben soll und bei sperren soll er das "Frame2" wieder sperren... eigentlich logisch...
Ist das machbar?
Vielen Dank für jede Hilfe
Ralf
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Button bei 1. Klick rot, bei 2. Klick grün
13.05.2004 14:10:19
FloGo
Hallo Ralf
du kannst ja ganz einfach 2 CB machen, einer rot, einer grün. und beim klick auf den einen wird der andere ein und auf den geklickt wurde ausgeblendet:

Private Sub CommandButton1_Click()
CommandButton1.Visible = False
CommandButton2.Visible = True
End Sub


Private Sub CommandButton2_Click()
CommandButton1.Visible = True
CommandButton2.Visible = False
End Sub

FloGo
Anzeige
AW: Button bei 1. Klick rot, bei 2. Klick grün
13.05.2004 14:13:04
GraFri
Hallo


Private Sub cmdFreiSperren_Click()
With cmdFreiSperren
    If .BackColor = &HFF00& Then
        .BackColor = &HFF&
        .Caption = "sperren"
    Else
        .BackColor = &HFF00&
        .Caption = "freigeben"
    End If
End With
End Sub


Mit freundlichen Grüßen, GraFri
Anzeige
AW: Button bei 1. Klick rot, bei 2. Klick grün
xXx
Hallo,
natürlich geht das. Nimm eine Umschaltfläche (Togglebutton).Folgendes Beispiel:

Private Sub ToggleButton1_Click()
With Me.ToggleButton1
If .Value = False Then
.Caption = "Freigabe"
.BackColor = &HC000&
Me.Frame2.Enabled = True
Else
.BackColor = &HFF&
.Caption = "Sperren"
Me.Frame2.Enabled = False
End If
End With
End Sub

Gruß aus'm Pott
Udo
http://www.excelerator.de
Anzeige
AW: Button bei 1. Klick rot, bei 2. Klick grün
Ralf
Super, klappt einwandfrei, vielen Dank Leute, ihr seit Spitze!!!!
;
Anzeige

Infobox / Tutorial

Button bei 1. Klick rot, bei 2. Klick grün


Schritt-für-Schritt-Anleitung

Um einen Button in Excel zu erstellen, der bei jedem Klick die Farbe wechselt und den Text ändert, folge diesen Schritten:

  1. Öffne Excel und erstelle ein neues Formular (UserForm).

  2. Füge einen ToggleButton (Umschaltfläche) zu deinem Formular hinzu.

  3. Doppelklicke auf den ToggleButton, um den VBA-Editor zu öffnen.

  4. Füge den folgenden Code ein:

    Private Sub ToggleButton1_Click()
       With Me.ToggleButton1
           If .Value = False Then
               .Caption = "Freigabe"
               .BackColor = &HC000
               Me.Frame2.Enabled = True
           Else
               .BackColor = &HFF
               .Caption = "Sperren"
               Me.Frame2.Enabled = False
           End If
       End With
    End Sub
  5. Schließe den VBA-Editor und teste das Formular.

Jetzt sollte dein Button beim ersten Klick rot werden und "Sperren" anzeigen, und beim zweiten Klick zurück zu grün mit "Freigabe".


Häufige Fehler und Lösungen

  • Fehler: Der Button ändert die Farbe nicht.

    • Lösung: Stelle sicher, dass die BackColor-Werte korrekt sind und der ToggleButton aktiviert ist.
  • Fehler: Der Text des Buttons bleibt unverändert.

    • Lösung: Überprüfe den Code im VBA-Editor, um sicherzustellen, dass die .Caption-Eigenschaft korrekt gesetzt ist.

Alternative Methoden

Falls du eine andere Lösung bevorzugst, kannst du auch zwei separate CommandButtons verwenden, die sich gegenseitig ausblenden. Hier ist ein Beispiel:

  1. Füge zwei CommandButtons (CommandButton1 und CommandButton2) hinzu.
  2. Verwende folgenden Code:

    Private Sub CommandButton1_Click()
       CommandButton1.Visible = False
       CommandButton2.Visible = True
    End Sub
    
    Private Sub CommandButton2_Click()
       CommandButton1.Visible = True
       CommandButton2.Visible = False
    End Sub

Diese Methode zeigt den einen Button an, während der andere ausgeblendet ist.


Praktische Beispiele

Ein praktisches Beispiel für die Verwendung des ToggleButtons ist in Formularen für die Freigabe von Daten. Du kannst das Frame2 aktivieren oder deaktivieren, je nachdem, ob die Daten freigegeben oder gesperrt sind. Wenn du weitere Anpassungen benötigst, kannst du die Eigenschaften des Buttons oder des Frames im VBA-Editor ändern.


Tipps für Profis

  • Experimentiere mit verschiedenen Farben und Texten, um die Benutzererfahrung zu verbessern.
  • Du kannst auch die Enabled-Eigenschaft des Frames dynamisch anpassen, um die Benutzerinteraktion zu steuern.
  • Achte darauf, den Code gut zu kommentieren, um die Wartung zu erleichtern.

FAQ: Häufige Fragen

1. Kann ich den Button auch in einer anderen Excel-Version verwenden? Ja, der gezeigte Code sollte in den meisten modernen Excel-Versionen (ab Excel 2007) funktionieren.

2. Was ist der Unterschied zwischen CommandButton und ToggleButton? Ein CommandButton wird einmal aktiviert, während ein ToggleButton zwischen zwei Zuständen (ein/aus) wechselt.

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