online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon pesi vom 15.09.2021, 13:23 Options

Excel 2003 - VBA - Userform löschen

Hallo zusammen,

ich lasser per VBA-Code eine Userform dynamisch während der Laufzeit des Programms erzeugen.
Nachdem das Programm abgelaufen ist, verschwindet die Userform allerdings nicht wieder, sondern sie bleibt im Projektexplorer und würde mit abgespeichert werden.

Jetzt meine Frage: Wie lösche ich die Userform zur Laufzeit wieder?
Erzeugt wird sie durch:
Set o_form = Thisworkbook.VBProject.VBComponents.Add(vbext_ct_MSForm)
Löschen mit
ThisWorkbook.VBProject.VBComponents.remove(o_form)
funktioniert leider nicht!

Vielen Dank für Eure Unterstützung


Antwort schreiben

Antwort 1 von Hajo_Zi vom 15.09.2021, 13:32 Options

Hallo Unbekannter,

vielleicht so?
Code Lösche
Du könntest zum Schluss folgendes tun:
Sub VBA_Delete()
Dim objVB As Object
Dim objModul As Object
Application.StatusBar = "VBE-Elemente werden gelöscht..."
For Each objVB In ActiveWorkbook.VBProject.VBComponents
Set objModul = objVB.Codemodule
Select Case objVB.Type
Case 1 To 3
ActiveWorkbook.VBProject.VBComponents.Remove objVB
Case 100
objVB.Codemodule.DeleteLines 1, objModul.CountOfLines
End Select
Next
End Sub
von Matthias

Gruß Hajo

Antwort 2 von pesi vom 15.09.2021, 13:43 Options

Danke für die schnelle Hilfe!

Funktioniert einwandfrei!

Ähnliche Themen

Excel UserForm
fedjo  30.05.2008 - 101 Hits - 2 Antworten

VBA - Löschen UserForm
Tomschi  10.06.2008 - 72 Hits - 3 Antworten

VBA EXCEL Zeile löschen
vollmondgierig  27.10.2008 - 56 Hits - 10 Antworten

Excel VBA: löschen mit Kill findet Datei nicht
Reini0815  31.07.2009 - 505 Hits - 10 Antworten

VBA Erzeugte Datei beim Beenden von Excel löschen
Bierschinken  31.07.2009 - 583 Hits - 7 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026