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

Commandbutton deaktivieren / aktivieren

Forumthread: Commandbutton deaktivieren / aktivieren

Commandbutton deaktivieren / aktivieren
20.01.2004 09:29:31
PeterG
Liebe Excelgemeinde,
ich bitte um Hilfe. Wie kann ich Excel 8 (97) einen in einem Excelsheet platzierten Commandbutton per VBA deaktivieren, also die Enabled-Eigenschaft auf False und später wieder auf True setzen. Ich habe dazu bei den Excel-Beispielen von H.Herber schon einiges gefunden und probiert, läuft aber offerbar nur unter späteren Excelversionen. Ich danke für jede Antwort.
Freundliche Grüsse
PeterG
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Commandbutton deaktivieren / aktivieren
20.01.2004 10:13:31
Matthias G
Hallo Peter,
das geht so:
Activesheet.OleObjects("CommandButton1").Enabled=False
Gruß,
Matthias
AW: Commandbutton deaktivieren / aktivieren
20.01.2004 10:21:55
PeterG
Hallo Matthias,
das habe ich schon probiert. Da kommt bei mir die Fehlermeldung
"Die OleObjects-Eigenschaft des Worksheet-Objektes kann nicht zugeordnet werden"
Fehlt mir da vielleicht eine spezielle Objektbibiothek?
Danke für deine Antwort.
mfg
PeterG
Anzeige
AW: Commandbutton deaktivieren / aktivieren
20.01.2004 10:27:54
Matthias G
Hallo Peter,
versuch mal:
Activesheet.OleObjects("CommandButton1").Object.Enabled=False
Gruß
Matthias
AW: Commandbutton deaktivieren / aktivieren
20.01.2004 10:31:59
PeterG
Hallo Matthias,
leider auch nicht. Diese Syntax hatte ich auch schon in einem Herber-Beispiel gefunden. Ich vermute, es liegt an meiner Excel-Konfiguration. Trotzdem danke.
mfg
PeterG
Anzeige
AW: Commandbutton deaktivieren / aktivieren
20.01.2004 10:38:03
Matthias G
Hallo Peter,
hast Du den CommandButton vielleicht mit der Formular-Toolbox erstellt? Dann geht es nicht, du musst die Steuerelement-Toolbox verwenden.
Matthias
Bingo!
20.01.2004 10:45:36
PeterG
Hallo Matthias,
das war's! Darauf wäre ich in meinem ganzen Leben nicht gekommen!
Ich danke dir.
mfg
PeterG
AW: Bitte, gern geschehen! - oT
20.01.2004 10:48:00
Matthias G
-
Anzeige
Anzeige

Infobox / Tutorial

Commandbutton in Excel aktivieren und deaktivieren


Schritt-für-Schritt-Anleitung

Um einen Commandbutton in Excel 8 (97) per VBA zu deaktivieren und später wieder zu aktivieren, kannst Du folgende Schritte befolgen:

  1. Öffne den VBA-Editor (drücke ALT + F11).

  2. Füge ein neues Modul hinzu (Rechtsklick auf "VBAProject" > Einfügen > Modul).

  3. Kopiere und füge den folgenden Code ein:

    Sub DeactivateCommandButton()
       ActiveSheet.OLEObjects("CommandButton1").Object.Enabled = False
    End Sub
    
    Sub ActivateCommandButton()
       ActiveSheet.OLEObjects("CommandButton1").Object.Enabled = True
    End Sub
  4. Wenn Du den Commandbutton deaktivieren oder aktivieren möchtest, führe einfach die jeweiligen Makros DeactivateCommandButton oder ActivateCommandButton aus.


Häufige Fehler und Lösungen

  • Fehlermeldung: "Die OleObjects-Eigenschaft des Worksheet-Objektes kann nicht zugeordnet werden."

    • Lösung: Stelle sicher, dass Du die richtige Syntax verwendest: ActiveSheet.OLEObjects("CommandButton1").Object.Enabled = False
  • Fehler: Der Commandbutton wurde mit der Formular-Toolbox erstellt.

    • Lösung: Du musst die Steuerelement-Toolbox verwenden, um sicherzustellen, dass die VBA-Methoden korrekt funktionieren.

Alternative Methoden

Falls die oben genannten Methoden nicht funktionieren, gibt es alternative Ansätze:

  1. Verwendung von Formeln: Anstatt den Commandbutton direkt zu deaktivieren, kannst Du seine Sichtbarkeit steuern. Setze die Sichtbarkeit des Commandbuttons basierend auf einer Zelle:

    If Range("A1").Value = "Deaktivieren" Then
       ActiveSheet.OLEObjects("CommandButton1").Visible = False
    Else
       ActiveSheet.OLEObjects("CommandButton1").Visible = True
    End If
  2. Benutze ein anderes Steuerelement: Überlege, ob ein anderes Steuerelement für Deine Anwendung geeigneter ist, z.B. eine aktive Schaltfläche oder ein Bild.


Praktische Beispiele

Hier sind einige praktische Beispiele, die Dir helfen, den Commandbutton effektiv zu nutzen:

  • Deaktivieren bei Bedingung: Wenn ein bestimmter Wert in einer Zelle eingegeben wird, kannst Du den Commandbutton deaktivieren:

    If Range("B1").Value < 10 Then
       ActiveSheet.OLEObjects("CommandButton1").Object.Enabled = False
    Else
       ActiveSheet.OLEObjects("CommandButton1").Object.Enabled = True
    End If
  • Aktivierung nach Eingabe: Aktiviere den Commandbutton, sobald alle erforderlichen Felder ausgefüllt sind.


Tipps für Profis

  • Verwende Ereignisprozeduren: Arbeite mit Ereignisprozeduren, um automatisch den Status des Commandbuttons zu ändern, wenn sich Daten in einem Arbeitsblatt ändern.

  • Fehlerbehandlung: Implementiere eine Fehlerbehandlung in Deinen VBA-Skripten, um unerwartete Probleme elegant zu lösen. Beispiel:

    On Error Resume Next
    ActiveSheet.OLEObjects("CommandButton1").Object.Enabled = False
    If Err.Number <> 0 Then
       MsgBox "Fehler beim Deaktivieren des Commandbuttons!"
    End If
    On Error GoTo 0

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass der Commandbutton immer aktiviert ist? Du kannst eine Bedingung in Deinem VBA-Code festlegen, die überprüft, ob bestimmte Kriterien erfüllt sind, bevor der Commandbutton aktiviert wird.

2. Was kann ich tun, wenn der Commandbutton nicht funktioniert? Prüfe, ob der Commandbutton mit der richtigen Toolbox erstellt wurde und ob die Syntax in Deinem VBA-Code korrekt ist. Versuche, den Code zeilenweise auszuführen, um das Problem zu identifizieren.

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