Zum Hauptinhalt springen

Kutools für Office — Eine Suite. Fünf Tools. Erledigen Sie mehr.

Wie aktiviert oder deaktiviert man eine Schaltfläche basierend auf einem Zellenwert in Excel?

Author Xiaoyang Last modified

In diesem Artikel werde ich über einige Methoden sprechen, um eine Schaltfläche basierend auf einem Zellenwert in einem Excel-Arbeitsblatt zu aktivieren oder zu deaktivieren.

Aktivieren oder Deaktivieren von zwei Schaltflächen basierend auf Daten aus zwei Spalten mit VBA-Code

Aktivieren oder Deaktivieren einer Schaltfläche basierend auf zwei Zellenwerten mit VBA-Code


Aktivieren oder Deaktivieren von zwei Schaltflächen basierend auf Daten aus zwei Spalten mit VBA-Code

Zum Beispiel habe ich zwei Befehlsschaltflächen in einem Arbeitsblatt. Wenn Spalte A Daten enthält, ist Schaltfläche 1 aktiviert und Schaltfläche 2 deaktiviert; wenn Spalte C Daten enthält, ist Schaltfläche 2 aktiviert und Schaltfläche 1 deaktiviert. Um diese Aufgabe zu lösen, kann der folgende VBA-Code helfen.

1. Klicken Sie mit der rechten Maustaste auf das Blatt, das die Schaltflächen enthält, und wählen Sie dann Ansicht Code aus dem Kontextmenü, siehe Screenshot:

a screenshot of opening the VBA code editor in Excel

2. Im Fenster Microsoft Visual Basic for Applications kopieren Sie bitte den folgenden Code und fügen ihn in das leere Modul ein:

VBA-Code: Aktivieren oder Deaktivieren von zwei Schaltflächen basierend auf zwei Spalten:

Private Sub Worksheet_Change(ByVal Target As Range)
    CommandButton1.Enabled = False
    CommandButton2.Enabled = False
    If Application.WorksheetFunction.CountA(Range("C:C")) > 0 Then
        CommandButton2.Enabled = True
    End If
    If Application.WorksheetFunction.CountA(Range("A:A")) > 0 Then
        CommandButton1.Enabled = True
    End If
End Sub

a screenshot showing how to use the VBA code to disable two buttons

Hinweis: Im obigen Code sind CommandButton1 und CommandButton2 die Namen der Schaltflächen, A:A und C:C sind die beiden Spalten, die Sie verwenden, um zwei Schaltflächen zu aktivieren oder zu deaktivieren, ändern Sie sie nach Bedarf.

3. Speichern Sie dann das Codefenster und schließen Sie es. Nun erhalten Sie das folgende Ergebnis, wie Sie es benötigen:

(1.) Wenn Sie Daten in Spalte A eingeben, ist Schaltfläche 1 aktiviert und Schaltfläche 2 deaktiviert, siehe Screenshot:

a screenshot showing one button can be used and one is disabled based on value in column A

(2.) Wenn Sie Daten in Spalte C eingeben, ist Schaltfläche 2 aktiviert und Schaltfläche 1 deaktiviert, siehe Screenshot:

a screenshot showing one button can be used and one is disabled based on value in column C

(3.) Wenn sowohl Spalte A als auch Spalte C Daten enthalten, sind beide Schaltflächen aktiviert, siehe Screenshot:

a screenshot showing both buttons can be used when column A and C have data

(4.) Wenn es keine Daten in Spalte A und Spalte C gibt, sind beide Schaltflächen deaktiviert, siehe Screenshot:

a screenshot showing both buttons are disabled when no data is in column A and C


Aktivieren oder Deaktivieren einer Schaltfläche basierend auf zwei Zellenwerten mit VBA-Code

Wenn Sie eine Befehlsschaltfläche basierend auf zwei Zellenwerten aktivieren oder deaktivieren möchten, zum Beispiel, wenn der Wert in A1 größer als der Wert in B1 ist, ist die Schaltfläche aktiviert, andernfalls ist die Schaltfläche deaktiviert. Der folgende VBA-Code kann Ihnen ebenfalls helfen.

1. Klicken Sie mit der rechten Maustaste auf das Blatt, das die Schaltfläche enthält, und wählen Sie dann Ansicht Code aus dem Kontextmenü. Im Fenster Microsoft Visual Basic for Applications kopieren Sie bitte den folgenden Code und fügen ihn in das leere Modul ein, siehe Screenshot:

VBA-Code: Aktivieren oder Deaktivieren einer Schaltfläche basierend auf zwei Zellenwerten:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim TargetAdd As String
    Dim xTemp As Double
    On Error GoTo ExitSub
    TargetAdd = Target.Address
    CommandButton1.Enabled = False
    If (TargetAdd = Range("A1").Address) Or (TargetAdd = Range("B1").Address) Then
        If Range("A1") > Range("B1") Then
            CommandButton1.Enabled = True
        End If
    End If
ExitSub:
End Sub

a screenshot showing how to use the VBA code to enable or disable a button

Hinweis: Im obigen Code sind A1 und B1 die Zellenwerte, die Sie verwenden, CommanButton1 ist der Name der Schaltfläche, ändern Sie sie entsprechend Ihren Anforderungen.

2. Speichern Sie dann das Codefenster und schließen Sie es. Nun ist die Schaltfläche aktiviert, wenn der Zellenwert in A1 größer als in B1 ist, andernfalls ist die Schaltfläche deaktiviert, wenn der Zellenwert in A1 kleiner als in B1 ist, siehe Screenshot:

a screenshot showing the different status of a button based on cell value


Die besten Produktivitätstools für das Büro

🤖 Kutools AI Assistent: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung |  Code generieren  |  Benutzerdefinierte Formeln erstellen |  Daten analysieren und Diagramme generieren  |  Erweiterte Funktionen aufrufen
Beliebte Funktionen: Doppelte suchen, hervorheben oder markieren | Leere Zeilen löschen | Spalten oder Zellen zusammenführen, ohne Daten zu verlieren | Runden...
Erweiterte SVERWEIS: SVERWEIS mit mehreren Kriterien | SVERWEIS für mehrere Werte | Mehrblatt-SVERWEIS | Fuzzy Match...
Erweiterte Dropdown-Liste: Dropdown-Liste schnell erstellen | Abhängige Dropdown-Liste | Mehrfachauswahl Dropdown-Liste...
Spaltenmanager: Eine bestimmte Anzahl an Spalten hinzufügen | Spalten verschieben | Sichtbarkeitsstatus versteckter Spalten umschalten | Bereiche & Spalten vergleichen...
Empfohlene Funktionen: Gitterfokus | Entwurfsansicht | Erweiterte Formelleiste | Arbeitsmappe & Arbeitsblatt-Manager | AutoText-Bibliothek | Datumsauswahl | Daten zusammenführen | Zellen verschlüsseln/entschlüsseln | E-Mail senden nach Liste | Super Filter | Spezialfilter (fett/kursiv/durchgestrichen filtern...) ...
Top15 Toolsets:12 Textwerkzeuge (Text hinzufügen, Bestimmte Zeichen löschen, ...) |50+ Diagramm typen (Gantt-Diagramm, ...) |40+ praktische Formeln (Alter basierend auf dem Geburtsdatum berechnen, ...) |19 Einfügewerkzeuge (QR-Code einfügen, Bild aus Pfad einfügen, ...) |12 Konvertierungswerkzeuge (In Wörter umwandeln, Währungsumrechnung, ...) |7 Konsolidierungs- & Aufteilungstools (Erweiterte Zeilen zusammenführen, Zellen aufteilen, ...) | ... und mehr
Verwenden Sie Kutools in Ihrer bevorzugten Sprache – unterstützt Englisch, Spanisch, Deutsch, Französisch, Chinesisch und über40 weitere!

Stärken Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und genießen Sie Effizienz wie nie zuvor. Kutools für Excel bietet mehr als300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...


Office Tab bringt die Tab-Oberfläche in Office und macht Ihre Arbeit wesentlich einfacher

  • Aktivieren Sie die Tabulator-Bearbeitung und das Lesen in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Tabs innerhalb desselben Fensters, statt in neuen Einzelfenstern.
  • Steigert Ihre Produktivität um50 % und reduziert hunderte Mausklicks täglich!

Alle Kutools-Add-Ins. Ein Installationspaket

Das Kutools for Office-Paket bündelt Add-Ins für Excel, Word, Outlook & PowerPoint sowie Office Tab Pro und ist ideal für Teams, die mit mehreren Office-Anwendungen arbeiten.

Excel Word Outlook Tabs PowerPoint
  • All-in-One-Paket — Add-Ins für Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Ein Installationspaket, eine Lizenz — in wenigen Minuten einsatzbereit (MSI-kompatibel)
  • Besser gemeinsam — optimierte Produktivität in allen Office-Anwendungen
  • 30 Tage kostenlos testen — keine Registrierung, keine Kreditkarte erforderlich
  • Bestes Preis-Leistungs-Verhältnis — günstiger als Einzelkauf der Add-Ins