Registriert seit: 08.07.2016
Version(en): 2016
27.05.2017, 15:29
hi,
ich habe ein paar Checkboxen, welche ich per Makro deaktivieren möchte. Aber wie geht das?
So wähle ich die Checkbox an:
Code:
ActiveSheet.Shapes.Range(Array("Check Box 3124")).Select
So wähle ich mehrere Checkboxen an:
Code:
ActiveSheet.Shapes.Range(Array("Check Box 3127", "Check Box 3128")).Select
Aber wie deaktviere ich sie?
lieben Dank
Julia :)
Registriert seit: 11.04.2014
Version(en): Office 2007
27.05.2017, 17:27
(Dieser Beitrag wurde zuletzt bearbeitet: 27.05.2017, 17:27 von Steffl.)
Hallo, Julia,
vielleicht irgendeine Zelle im aktiven Tabellenblatt selektieren oder noch besser: die Checkboxen gar nicht selektieren.
Gruß Stefan
Win 10 / Office 2016
Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:1 Nutzer sagt Danke an Steffl für diesen Beitrag 28
• o0Julia0o
Registriert seit: 08.07.2016
Version(en): 2016
hi Steffl. Ich möchte aber das Häkchen wegmachen aus der Checkbox bzw. den Checkboxen.
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
Setze den Value der Checkbox auf false.
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 14.04.2014
Version(en): 2003, 2007
27.05.2017, 22:45
(Dieser Beitrag wurde zuletzt bearbeitet: 27.05.2017, 22:45 von atilla.)
Hallo
du hast Formularsteuerelemente, richtig?
Dann so z.B.:
Code:
Sub kontrolkästchen_abwählen()
Dim i As Long
For i = 3127 To 3128
ActiveSheet.Shapes("Check Box" & i).ControlFormat.Value = xlOff
Next i
End Sub
und
Code:
Sub kontrolkästchen_abwählen()
Dim i As Long
For i = 3127 To 3128
ActiveSheet.Shapes("Check Box" & i).ControlFormat.Value = xlOff
Next i
End Sub
Wenn keine Schleife möglich dann einzeln ansprechen.
Gruß Atilla
Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:1 Nutzer sagt Danke an atilla für diesen Beitrag 28
• o0Julia0o
Registriert seit: 08.07.2016
Version(en): 2016
die beiden Codeblöcke sind identisch von Dir, Atila.
Das wird gelb markiert, :
ActiveSheet.Shapes("Check Box" & i).ControlFormat.Value = xlOff
Aber einzeln klappt das wunderbar:
Sub kontrolkästchen_abwählen()
ActiveSheet.Shapes("Check Box 3127").ControlFormat.Value = xlOff
End Sub
Wobei die Schleife gar nicht so übel gewesen wäre, sind nämlich einige Checkboxen...
Danke!
Registriert seit: 11.04.2014
Version(en): 2021
28.05.2017, 17:52
(Dieser Beitrag wurde zuletzt bearbeitet: 28.05.2017, 17:52 von Glausius.)
Hallo Julia,
da fehlt in Atillas-Code offentsichtlich nur ein Leerzeichen bei den Checkboxes:
Code:
ActiveSheet.Shapes("Check Box " & i).ControlFormat.Value = xlOff
Gruß Günter
aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig
Folgende(r) 1 Nutzer sagt Danke an Glausius für diesen Beitrag:1 Nutzer sagt Danke an Glausius für diesen Beitrag 28
• o0Julia0o
Registriert seit: 14.04.2014
Version(en): 2003, 2007
Hallo Julia,
ja, Günter hat recht, da könnte ein Leerzeichen fehlen.
War mir zwar gestern nach dem Abschicken auch aufgefallen, aber ich ging davon aus, das Du so etwas mitlerweile selber erkennst und korrigierst.
Und ja die Codes sind identisch, sollten sich nur mit xlOff und xlOn am Ende unterscheiden.
Du brauchst aber wahrscheinlich sowieso nur das xlOff, weil Du wahrscheinlich ein Formular wieder im Urzustand haben möchtest.
Wenn das mit der For Next Schleife nicht geht, dann ginge es auch mit einer For Each Schleife.
Gruß Atilla
Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:1 Nutzer sagt Danke an atilla für diesen Beitrag 28
• o0Julia0o
Registriert seit: 08.07.2016
Version(en): 2016
(28.05.2017, 17:52)Glausius schrieb: Hallo Julia,
da fehlt in Atillas-Code offentsichtlich nur ein Leerzeichen bei den Checkboxes:
Code:
ActiveSheet.Shapes("Check Box " & i).ControlFormat.Value = xlOff
DAnke. Aber auch so funktioniert es leider nicht.
Registriert seit: 14.04.2014
Version(en): 2003, 2007
28.05.2017, 21:30
(Dieser Beitrag wurde zuletzt bearbeitet: 28.05.2017, 21:33 von atilla.)
Hallo Julia,
dann mach et so:
Code:
Sub kontrolkästchen_abwählen()
Dim i As Integer
With ActiveSheet
For i = 1 To .CheckBoxes.Count
If .CheckBoxes(i) = 1 Then .CheckBoxes(i) = xlOff
Next
End With
End Sub
In diesem Fall geht es auch mit Value:
Code:
Sub kontrolkästchen_abwählen()
Dim i As Integer
With ActiveSheet
For i = 1 To .CheckBoxes.Count
If .CheckBoxes(i) = 1 Then .CheckBoxes(i).Value = False
Next
End With
End Sub
Gruß Atilla
Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:1 Nutzer sagt Danke an atilla für diesen Beitrag 28
• o0Julia0o