AW: UserForm mit Kontrollkästchen öffnen und schließen
12.02.2020 12:37:59
Beverly
Hi,
wenn du ein Kontrollkästchen aus den Formular-Steuerelementen verwendest, dann weise ihm folgendes Makro zu:
Sub UFSteuern()
If ActiveSheet.Shapes(Application.Caller).ControlFormat.Value = 1 Then
UserForm1.Show
Else
UserForm1.Hide
End If
End Sub
Wenn du das UserForm über das Kontrollkästchen schließen willst, musst du aber beachten, dass das UserForm die Eigenschaft ShowModal = False haben muss, sonst kann du nicht auf das Tabellenblatt zugreifen.
Wenn du allerdings die Eigenschaft nicht auf False setzen willst sondern das UserForm z.B. über einen Button schließen willst, dann reicht folgendes Makro:
Sub UFSteuern()
If ActiveSheet.Shapes(Application.Caller).ControlFormat.Value = 1 Then
UserForm1.Show
End If
End Sub
Allerdings musst du im Code des SchließenButtons im UserForm das Kontrollkästchen zurücksetzen - nach diesem Prinzip:
Private Sub SchliessenButton_Click()
Me.Hide
ActiveSheet.Shapes("Check Box 1").ControlFormat.Value = 0
End Sub
Eventuell musst du das Kontrollkästchen auch noch zurücksetzen, falls das UserForm nicht mit dem Schließen-Button sondern über das "X" geschlossen wird:
Private Sub UserForm_Terminate()
ActiveSheet.Shapes("Check Box 1").ControlFormat.Value = 0
End Sub