Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Togglebutton erstellen

Togglebutton erstellen
01.04.2009 10:14:58
Sepp
Hallo zusammen
habe folgende zwei Makros, welche jetzt zwei Buttons zugewiesen sind. Ich möchte aber an Stelle der beiden Buttons ein Toggle-Button. Sprich, wenn er reingedrückt wird, soll Makro1 ausgeführt werden, wenn er gelöst wird, dann Makro2. Wie mach ich das?
Hier meine beiden Makros:

Sub Makro1()
With Application
.Calculation = xlManual
.MaxChange = 0.001
End With
ActiveWorkbook.PrecisionAsDisplayed = False
End Sub



Sub Makro2()
With Application
.Calculation = xlAutomatic
.MaxChange = 0.001
End With
ActiveWorkbook.PrecisionAsDisplayed = False
End Sub


Gruss Sepp

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Togglebutton erstellen
01.04.2009 10:26:25
TOM
Hallo Sepp
Ich würde das so lösen:
Option Explicit
Dim Schalter As Boolean

Private Sub ToggleButton1_Click()
If Schalter = False Then
With Application
.Calculation = xlManual
.MaxChange = 0.001
End With
Schalter = True
Else
With Application
.Calculation = xlAutomatic
.MaxChange = 0.001
End With
Schalter = False
End If
ActiveWorkbook.PrecisionAsDisplayed = False
End Sub


Gruss
TOM

Anzeige
AW: Togglebutton erstellen
01.04.2009 10:30:39
Andi
Hi,
den Umweg über die Variable Schalter brauchst Du nicht; Du kannst direkt den Wert des Button auswerten.
Schönen Gruß,
Andi
AW: Togglebutton erstellen
01.04.2009 10:29:03
Andi
Hi,
so:

Private Sub ToggleButton1_Click()
If ToggleButton1.Value = True Then
With Application
.Calculation = xlManual
.MaxChange = 0.001
End With
ActiveWorkbook.PrecisionAsDisplayed = False
Else
With Application
.Calculation = xlAutomatic
.MaxChange = 0.001
End With
ActiveWorkbook.PrecisionAsDisplayed = False
End If
End Sub


Schönen Gruß,
Andi

Anzeige
AW: Togglebutton erstellen
01.04.2009 10:31:27
TOM
Hallo Andi
Wieso schierig wenn's einfach geht......
Besten Dank Andi ist natürlich einfacher!!
Gruss
TOM
AW: Togglebutton erstellen
01.04.2009 10:33:57
fcs
Hallo Sepp,
der Code für den Toggle-Button schaut dann wie folgt aus:

Private Sub ToggleButton1_Click()
If Me.ToggleButton1.Value = True Then
Call Makro1
Me.ToggleButton1.Caption = "Manuell"
Else
Call Makro2
Me.ToggleButton1.Caption = "Automatic"
End If
End Sub


Dabei wird beim Umschalten des Buttons auch die Beschriftung angepasst.
Gruß
Franz

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Togglebutton in Excel erstellen


Schritt-für-Schritt-Anleitung

Um einen Togglebutton in Excel einzufügen und zu konfigurieren, folge diesen Schritten:

  1. Togglebutton einfügen:

    • Gehe zu Entwicklertools in der Ribbon-Leiste.
    • Klicke auf Einfügen und wähle den ToggleButton aus der ActiveX-Steuerelemente aus.
    • Zeichne den Togglebutton auf deinem Arbeitsblatt.
  2. VBA-Editor öffnen:

    • Klicke mit der rechten Maustaste auf den Togglebutton und wähle Code anzeigen.
  3. Makros definieren:

    • Füge die folgenden Makros in den Code-Bereich ein:
Sub Makro1()
    With Application
        .Calculation = xlManual
        .MaxChange = 0.001
    End With
    ActiveWorkbook.PrecisionAsDisplayed = False
End Sub

Sub Makro2()
    With Application
        .Calculation = xlAutomatic
        .MaxChange = 0.001
    End With
    ActiveWorkbook.PrecisionAsDisplayed = False
End Sub
  1. Togglebutton logik implementieren:
    • Füge den folgenden Code für den Togglebutton ein:
Private Sub ToggleButton1_Click()
    If ToggleButton1.Value = True Then
        Call Makro1
        ToggleButton1.Caption = "Manuell"
    Else
        Call Makro2
        ToggleButton1.Caption = "Automatic"
    End If
End Sub
  1. Testing:
    • Schließe den VBA-Editor und kehre zu deinem Arbeitsblatt zurück.
    • Aktiviere den Designmodus, um den Button zu testen. Klicke auf den Togglebutton und beobachte die Änderungen.

Häufige Fehler und Lösungen

  • Fehler: Togglebutton reagiert nicht:

    • Lösung: Stelle sicher, dass du den Designmodus deaktiviert hast, bevor du den Togglebutton testest.
  • Fehler: Makros werden nicht ausgeführt:

    • Lösung: Überprüfe, ob die Makros in den Excel-Einstellungen aktiviert sind. Gehe zu Datei > Optionen > Sicherheitscenter.
  • Togglebutton zeigt nicht die richtigen Werte an:

    • Lösung: Überprüfe, ob die Caption-Eigenschaft im Click-Ereignis korrekt gesetzt wird.

Alternative Methoden

Wenn du keinen Togglebutton verwenden möchtest, kannst du alternativ auch normale Schaltflächen verwenden und mit If-Bedingungen die gleiche Logik umsetzen. Du kannst auch Formeln in Zellen verwenden, um den Status zu verfolgen, und dann mit einem Button die Berechnung anstoßen.


Praktische Beispiele

Hier ist ein Beispiel, wie du einen excel vba toggle button in einer Finanzanwendung verwenden kannst:

Private Sub ToggleButton1_Click()
    If ToggleButton1.Value = True Then
        Call Makro1
        ToggleButton1.Caption = "Manuell"
    Else
        Call Makro2
        ToggleButton1.Caption = "Automatic"
    End If
End Sub

In diesem Beispiel wird der Togglebutton verwendet, um zwischen automatischen und manuellen Berechnungen in einer Finanzanwendung zu wechseln.


Tipps für Profis

  • Nutze die Option Explicit-Anweisung am Anfang deines Codes, um sicherzustellen, dass alle Variablen deklariert sind.
  • Verwende benutzerdefinierte Steuerelemente für eine bessere Benutzeroberfläche.
  • Experimentiere mit den Eigenschaften des Togglebuttons, um eine ansprechende Benutzererfahrung zu schaffen.

FAQ: Häufige Fragen

1. Wie kann ich mehrere Togglebuttons in einem Arbeitsblatt verwenden?
Du kannst mehrere Togglebuttons einfügen und jedem Button eine eigene Click-Ereignisprozedur zuweisen. Achte darauf, dass jede Prozedur eindeutig ist, um Verwirrung zu vermeiden.

2. Funktioniert der Togglebutton in Excel Online?
Leider unterstützt Excel Online keine ActiveX-Steuerelemente wie Togglebuttons. Du musst die Desktop-Version von Excel verwenden.

3. Wie kann ich den Togglebutton in einer Schleife verwenden?
Du kannst die Logik innerhalb des Click-Ereignisses anpassen, um verschiedene Aktionen basierend auf dem Status des Togglebuttons auszuführen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige