Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA CommandButtons aktivieren/deaktivieren
#11
Hallo,

wären dafür CheckBoxen (Kontrolkästchen) nicht besser geeignet?

Gruß Uwe
Antworten Top
#12
Achso, ja das sind ja eigentlich 2 Probleme nicht nur eins. Das kostet dann aber doppelt Smile

Zum einen werden die Knöpfe in Abhängigkeit von c10 angezeigt oder verborgen:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim n As Long
  If Target <> Range("C10") Then Exit Sub
  n = Target.Value
  If (n < 1) Or (n > 6) Then MsgBox "Falsche Eingabe": Exit Sub
   
  CommandButton1.Visible = (n >= 1)
  CommandButton2.Visible = (n >= 2)
  CommandButton3.Visible = (n >= 3)
  CommandButton4.Visible = (n >= 4)
  CommandButton5.Visible = (n >= 5)
  CommandButton6.Visible = (n = 6)
End Sub
Und dann soll auch noch was passieren, wenn man auf einen sichtbaren Knopf drückt. Das kann man mit dem von mir bereits veröffentlichten Code umsetzen, da fehlen nur die Zeilen, die die gewünschte Aktion auslösen, der Farbwechsel ist schon drin.
Antworten Top
#13
Hallo,

hier mal eine Variante mit CheckBoxen so wie ich es verstanden habe:
Private Sub CheckBox1_Click()
CheckBoxenSichtbarkeit
End Sub
Private Sub CheckBox2_Click()
CheckBoxenSichtbarkeit
End Sub
Private Sub CheckBox3_Click()
CheckBoxenSichtbarkeit
End Sub
Private Sub CheckBox4_Click()
CheckBoxenSichtbarkeit
End Sub
Private Sub CheckBox5_Click()
CheckBoxenSichtbarkeit
End Sub
Private Sub CheckBox6_Click()
CheckBoxenSichtbarkeit
End Sub

Private Sub CheckBoxenSichtbarkeit()
Dim i As Long, j As Long
For i = 1 To 6
j = j - Me.OLEObjects("CheckBox" & i).Object.Value
Next i
If j = Range("C10").Value Then j = 0
For i = 1 To 6
Me.OLEObjects("CheckBox" & i).Visible = Me.OLEObjects("CheckBox" & i).Object.Value - j
Next i
End Sub
Gruß Uwe
Antworten Top
#14
Vielen Dank für eure Hilfe :)

Habe es jetzt aber doch "einfacher" über den Datenschnitt gelöst.
Antworten Top
#15
Aber eine Frage habe ich noch.

Der Datenschnitt umfasst:

Alternative 1
Alternative 2
Alternative 3
Alternative 4
...


Wenn ich im Datenschnitt NUR Alternative 1 auswähle möchte ich über den Klick auf den Datenschnitt das bestehende Makro "AusblendenA2-A6" aufrufen.
Äquivalent dazu wenn ich 1 und 3 auswähle soll das Makro "AusblendenA2_A4" aufegrufen werden.

Wisst ihr, ob man über den Datenschnitt ein Marko starten kann?
Antworten Top
#16
Wisst ihr, ob man über den Datenschnitt ein Marko starten kann?
Ja, das geht über Makro zuweisen, aber dann ist der Datenschnitt als solcher nicht mehr nutzbar.
Besser ist es über die Events zu gehen, die beim Ändern eines Datenschnitts ausgelöst werden.
[-] Folgende(r) 1 Nutzer sagt Danke an Storax für diesen Beitrag:
  • DieMarie
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste