expertenaustausch > microsoft.* > microsoft.excel

Hans.Alborg (14.02.2020, 12:15)
Hallo nochamal,

-VBA in Excel 2007-
Ich habe auf einer Userform ein Objekt "Multipage" sitzen, mit 2 Pages.
Auf beiden befinden sich viele Kontrollkästchen.
Jetzt möchte ich die mit einem Button alle zurücksetzen.
Aber nur auf der aktuellen Page!

Der Code in der Userform:
------
Private Sub Cbtn_reset_Click()
For i = 1 To Me.Controls.Count - 1
If TypeName(Me.Controls(i)) = "CheckBox" Then
If Me.Controls(i) = Visible Then
Me.Controls(i) = False
End If
End If
Next i
End Sub

Das "Visible" hab ich dazugetan, um nur die auf der offenen Page zu
erfassen. Das klappt leider nicht.
Die Page wird mit z.B.
If Fm.MultiPage1.Value = 0
abgefragt. Aber wie paßt das in den oberen Code rein?

Doof ist eigentlich, daß auch weitere Checkboxen auf der Form involviert
sind. Obwohl mich das im konkreten Fall nicht stört...

TIA,
Hans
Claus Busch (14.02.2020, 13:37)
Hi Hans,

Am Fri, 14 Feb 2020 11:15:08 +0100 schrieb Hans.Alborg:

> Ich habe auf einer Userform ein Objekt "Multipage" sitzen, mit 2 Pages.
> Auf beiden befinden sich viele Kontrollkästchen.
> Jetzt möchte ich die mit einem Button alle zurücksetzen.
> Aber nur auf der aktuellen Page!


probiere es mal so:

Dim i As Integer
Dim ctrl As Control

With Me.MultiPage1
With .SelectedItem
For Each ctrl In .Controls
If Left(ctrl.Name, 5) = "Check" Then
ctrl = False
End If
Next
End With
End With

Mit freundlichen Grüßen
Claus
Hans.Alborg (14.02.2020, 19:28)
Claus Busch schrieb:

> With Me.MultiPage1
> With .SelectedItem
> For Each ctrl In .Controls
> If Left(ctrl.Name, 5) = "Check" Then
> ctrl = False
> End If
> Next
> End With
> End With


Das ist die perfekte Lösung! Gut, daß meine ca.50 Checkboxen noch mit
Cbx anfangen ;-)
Jetzt kann ich weitermachen. Was mit SelectCase warscheinlich.
Die Checkboxen mit den Zeilen einer Buchung abgleichen.

Schon jetzt zeigt mir die Mappe wie ich voriges Jahr mein Geld
verplempert habe :-(
Ich werde sie "armer Schlucker 2" nennen!
(V.1 lief auf einem Commodore...)

Danke Dir!
Hans
Ähnliche Themen