Hallo,
ich arbeite mit Office 2010 und habe eine Frage zu VBA:
ich habe in einer Userform 6 Checkboxen mit der Eigenschaft value=false.
Ich möchte nur 1x true haben, d.h. wenn Checkbox1 als true markiert ist und Checkbox2 bei einem weiteren Klick ebenfalls markiert (value=true) wird, soll die Markierung von Checkbox1 wieder verschwinden.
Ich habe folgenden Code geschrieben, für alle 6 Checkboxen gleich:
(leider habe ich vergessen, wie die Anweisung heißt, um hier Code correkt einzutragen)
Private Sub Checkbox1_Click()
with Userform1
for i=1 to 6
.controls(„Checkbox“ & i).value=false
next i
Value=true
end with
end sub
Der Code funktioniert nicht. Im Debugger habe ich gesehen, daß, wenn checkbox.value gesetzt wird, der Cursor in die Überschrift „Private Sub Checkbox…“ springt.
Wenn ich die Schleife als Subroutine in Modul1 schreibe und sie von dieser „Private Sub…“ aufrufe, passiert dasselbe, der Cursor springt aus der Subroutine raus auf die „Private Sub…“. Schreibe ich statt „_Click()“ die Routine als „_change()“, passiert dasselbe, was mir in diesem Fall einleuchtet (bei _Click leuchtet es mir nicht ein).
Kennt jemand den Trick, die Textboxen alle auf false zu setzen, bevor true gesetzt wird?