Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
352to356
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
352to356
352to356
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Formularelemente löschen

Formularelemente löschen
24.12.2003 15:17:24
Björn
Hallo zusammen,

kennt jemand die Vorgehensweise, um aus einem bestehenden
Formular alle (einige) Formularelemente zu löschen ?
Das Formular selbst soll NICHT gelöscht werden.

Meine Versuche mit der Methode REMOVE führten leider nicht zum Erfolg.

vielen Dank in voraus,
Björn

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formularelemente löschen
24.12.2003 15:35:20
y
hi Björn,
soweit mir bekannt ist, kann man zur entwurfszeit hinzugefügte elemente während der laufzeit nicht so einfach löschen
aber wie wärs denn mit:
visible=false ?
cu Micha
AW: Formularelemente löschen
24.12.2003 15:48:38
Björn Sippel
Hallo,

das Formular ist bereits fertig !!!!!
Der Entwurtsmodus sollte hier nicht zum Tragen kommen.

Ich möchte per coding direkt auf ein Formular zugreifen und
z.B. CMDButton 3 löschen.

Gruss,
Björn
AW: Formularelemente löschen
24.12.2003 16:00:36
y
hi Björn,
wenn du meinen text nochmal lesen würdest ;-)
oder glaubst du der hilfe von excel mehr ? na gut dann hier ein auszug:

Remove-Methode
Diese Methode löscht jedes Steuerelement, das zur Laufzeit hinzugefügt wurde. Der Versuch, ein Steuerelement zu löschen, das zur Entwurfszeit hinzugefügt wurde, führt jedoch zu einem Fehler.

trotzdem fröhliche weihnachten
Micha
Anzeige
AW: Formularelemente löschen
24.12.2003 17:10:56
björn sippel
Hallo micha,
danke für die nachhilfe :-)

Die Hilfe hatte ich natürlich durchgelesen.

Ich konnte mir jedoch nicht vorstellen, das es keine
Möglichkeit gibt, Controls zu löschen, ohne das komplette
Formular wegzuwerfen.

Was will ich erreichen:
Schlichtweg im nachhinein codegesteuert Formularelemente
löschen.

Der hintergrund ist einfach, das ich ein Programm zur Formulargenerierung
wiederholt teste und beim Anlegen derselben controls natürlich auf
eine fehlermeldung stosse, das diese elemente bereits existieren.

Diese wollte ich vor jedem Programmlauf kurz und schmerzlos ins elektrische Nirwana (NULL) befördern.

Es bleibt wohl nur die Möglichkeit, vor jedem Programmlauf
das Formular komplett zu löschen ?

Gruss,
Björn
Anzeige
AW: Formularelemente löschen
24.12.2003 17:18:48
y
upps,
du generierst elemente zur laufzeit und genau diese kannst du natürlich auch wieder löschen !
wenn du also mit einem leeren formular anfängst wo ist dann dein problem ?
oder verstehe ich jetzt wirklich nur bahnhof ?

naja ich geh mal meine kinder ärgern ;-)

cu Micha
AW: Formularelemente löschen
24.12.2003 17:46:44
björn sippel
Hallo Michael,

ganz einfach:

Den Code(unten) starte ich einfach wiederholt an.
Beim 2. Durchlauf kommt die Fehlermeldung, das die Elemente bereits existieren.

Da wollte ch einfach die vorher angelegten controls löschen ...
Das Formular frmTageslisten (ohne controls) existiert bereits.

*************************************************************************

Sub Userform_anlegen()
Dim jj As Variant
Dim kk As Variant
jj = Array("z1", "z2", "z3")
kk = Array("c1", "c2", "c3")
Dim vbp As Object
Dim i As Integer, h As Integer
Dim cmd1 As MSForms.CommandButton
Application.VBE.MainWindow.Visible = False
On Error Resume Next
Set frmnew = ThisWorkbook.VBProject.vbcomponents("frmTageslisten").Designer
If Err <> 0 Then GoTo ErrorHandler
On Error GoTo 0
'löschen der controls im formular
Set frmnewx = ThisWorkbook.VBProject.vbcomponents("frmTageslisten").Designer
Dim xxx As Object
With frmnewx
h = .Controls.Count
For i = 0 To h
'-->>erzeugr Fehler: ThisWorkbook.VBProject.vbcomponents.Remove xxx.Controls(i)
Next
End With
'********ende löschen*****************
'uber schleife 3 buttons einfügen
For p = 0 To 2
With frmnew.Controls
Set cmd1 = .Add("Forms.commandbutton.1")
With cmd1
.Caption = jj(p)
.Accelerator = "o"
.Width = 30
.Height = 19
.Left = 30 + 35 * p
.Top = 10
.Name = kk(p)
End With
End With
Next
ErrorHandler:
'frmTageslisten.Show
'UserForms.Name).Show
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige