Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Checkboxen in UserForm im Frame löschen

Forumthread: Checkboxen in UserForm im Frame löschen

Checkboxen in UserForm im Frame löschen
29.01.2025 12:00:52
MarkoK
Hallo liebe Community,
im Forum habe ich schon viel gestöbert und viele Sachen ausprobiert, leider mit mäßigem Erfolg.
In meiner Subroutine sollen in der UserForm2 im Frame4 alle vorhandenen Checkboxen gelöscht werden und danach neue erstellt werden.
Der Grund hierfür ist, dass nach einem Change-Ereignis die Anzahl der Checkboxen sich ändert.
Das Anlegen neuer Checkboxen funktioniert.

Meine Herausforderung an euch ist das Löschen der vorhandenen Checkboxen. Es kommt die Fehlermeldung
Laufzeitfehler '438": Objekt unterstützt diese Eigenschaft oder Methode nicht
Könnt ihr mir bitte für das Löschen die korrekte Schreibweise mitteilen?
Anbei mein VBA-Code:


Sub checkbox()
Dim ob As Object
Dim Left, Top, Height, Width As Integer
Dim i As Byte
Left = 6
Top = 6
Height = 18
Width = 90
For Each ob In UserForm2.Frame4.controls
If TypeName(ob) = "CheckBox" Then ob.Control.Remove ' Fehlermeldung Laufzeitfehler '438": Objekt unterstützt diese Eigenschaft oder Methode nicht
Next ob
With UserForm2.Frame4
For i = 1 To UBound(namen)
Set mycontrol = .controls.Add("Forms.Checkbox.1")
mycontrol.Left = Left
mycontrol.Top = Top
mycontrol.Height = Height
mycontrol.Width = Width
mycontrol.Name = "CheckBox" & i
mycontrol.Font.Size = 10
mycontrol.Caption = namen(i)
Top = Top + 15
If i = 10 Then Top = 6: Left = 100
Next i
End With
End Sub
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Checkboxen in UserForm im Frame löschen
29.01.2025 12:31:44
Onur
Versuche es mit

Then ob.Remove
AW: Checkboxen in UserForm im Frame löschen
29.01.2025 14:39:46
MarkoK
Bringt die selbe Fehlermeldung
AW: Checkboxen in UserForm im Frame löschen
29.01.2025 14:41:25
Onur
Poste mal die Datei, sonst ist es nur Herumraterei.
Anzeige
AW: Checkboxen in UserForm im Frame löschen
29.01.2025 14:51:26
MarkoK
Die Datei enthält leider vertrauliche Daten.
Daher möchte ich diese nicht veröffentlichen.
Sorry
AW: Checkboxen in UserForm im Frame löschen
29.01.2025 14:55:06
Onur
Die geheimen Daten braucht Niemand - du kannst sie alle löschen, wir brauchen nur die Checkboxen.
AW: Checkboxen in UserForm im Frame löschen
29.01.2025 12:32:58
Oberschlumpf
Hi,

ich bin sicher, wir könnten einfacher helfen, wenn du uns nich nur den Code zeigst, sondern wenn du uns ne Bsp-Datei mit Userform, Frame + allen anderen Controls zeigst.
In der Bsp-Datei sollte dein Code natürlich an richtigen Stellen enthalten sein.

Ciao
Thorsten
Anzeige
AW: Checkboxen in UserForm im Frame löschen
29.01.2025 13:08:55
Alwin Weisangler
Hallo,

sind die Checkboxen einer Klasse zugewiesen?
Wenn ja muss auch die Klasse entsprechend entladen werden.

Gruß Uwe
AW: Checkboxen in UserForm im Frame löschen
29.01.2025 13:37:32
Ulf
Hi
afaik können nur zur Laufzeit erstellte Controls entfernt werden. Oder man muss die VBIDE-dll zuladen.
Die betreffenden Controls also beim Initialisieren erstellen funktioniert.
hth
Ulf
Anzeige
AW: Checkboxen in UserForm im Frame löschen
29.01.2025 15:10:39
MarkoK
Hallo liebe Community,
nach einigem Probieren konnte ich das Thema selbst lösen.
Der Fehler war, hinter dem Remove noch den Namen der Checkbox mit anzugeben.
Jetzt funktioniert es, wie gewünscht.
Ich danke allen, welche sich für die Lösung engagiert haben.
Für alle interessierten, hier der eingeschrumpfte Code:


Sub checkbox()
Dim ob As Object
With UserForm2.Frame4
For Each ob In .controls
.controls.Remove (ob.Name)
Next ob
End With
End Sub
Anzeige
AW: Checkboxen in UserForm im Frame löschen
29.01.2025 13:07:10
Piet
Hallo

statt CheckBoxen immer zu löschen kann man sie auch auf -Unsichtbar- oder -Nicht aktiv- setzen!
Das ist vielleicht sinnvoller als alles zu löschen und neu einzufügen. Ist nur ein Vorschlag von mir.

mfg Piet

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige