Anzeige
Archiv - Navigation
444to448
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
444to448
444to448
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Gelöschte von Makros / VBA-Module verschwinden nic

Gelöschte von Makros / VBA-Module verschwinden nic
25.06.2004 15:53:46
Makros
Am Ende eines größeren VBA-Programms möchte ich die Datei ohne Makros abspeichern.
Nach Durchlaufen der Lösch-Prozedur sind die Macros im Projekt-Fenster aber alle noch sichtbar.
A) Mache ich unmittelbar nach dem Durchlaufen der Lösch-Prozedur einen Save, bleiben die Makros
in der abgespeicherten Datei (Mappe) erhalten.
B) Breche ich dagegen nach der Lösch-Prozedur das Macro ab, sind die Macros im Projekt-Fenster
- wie gewünscht - verschwunden, ebenso beim nachfolgenden Abspeichern.
===) Wie erreiche ich ein Verschwinden der gelöschten Makros im normalen VBA-Durchlauf?
Meine Lösch-Prozedur:
Public

Sub prc00271_ModuleListLösch()
Dim CodeObj As Object
Dim VBkomp As VBComponent
Dim sFile As String
sFile = ThisWorkbook.Path & "\" & Kopie
If Dir(sFile) = "" Then
MsgBox "Arbeitsmappe " & sFile & " wurde nicht gefunden!"
Else
'Workbooks.Open sFile   '# ist hier schon offen
If Val(Application.Version) >= 8 Then
For Each VBkomp In ActiveWorkbook.VBProject.VBComponents
Select Case VBkomp.Type
Case Is = 1
'# Zum Testen MsgBox anzeigen lassen
'MsgBox ("Typ = " & VBkomp.Type & Chr(13) & _
"Name = " & VBkomp.Name)
ActiveWorkbook.VBProject.VBComponents.Remove VBkomp
End Select
Next VBkomp
End If
End If
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Gelöschte von Makros / VBA-Module verschwinden nic
Makros
"A) Mache ich unmittelbar nach dem Durchlaufen der Lösch-Prozedur einen Save, bleiben die Makros in der abgespeicherten Datei (Mappe) erhalten."
Wie machst du einen Save? Ist im Code nicht ersichtlich.
Ulf
AW: Gelöschte von Makros / VBA-Module verschwinden
Makros
Save vorher:
'#Datei speichern unter anderem Namen:
ActiveWorkbook.SaveAs FileName:=strReportPath & "\" & Kopie _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Application.ScreenUpdating = True
AW: Gelöschte von Makros / VBA-Module verschwinden
28.06.2004 10:02:00
Makros
Hallo Mike,
Meine Testumgebung: Excel 9.0 SR-1, Multilingual unter Windows 2000 SP-4
Dir ist klar, dass das Modul, in dem dein LoeschMakro steht, benutzt wird, während der Loeschmakro läuft? Würde dieses Modul sofort beim Befehl ActiveWorkbook.VBProject.VBComponents.Remove Vbkomp gelöscht werden, wenn es dran ist, dann würdest Du Dir den Ast absägen, auf dem Du gerade sitzt und Du würdest abstürzen.
Deshalb ist VBA so intelligent und versieht diese Komponente mit dem Hinweis, sie möge gelöscht werden, sobald sie nicht mehr aktiv ist. Da Du aber den Save auch automatisiert hast, wird selbstberständlich alles gesichert.
Es gibt nur die Lösung aus einem anderen VBAProjekt heraus (einer anderen Mappe) die Makros in der gewünschten Mappe zu löschen. Dann klappt das auch. Oder Du machst den Save per Hand.
Gruß Otto
Anzeige
AW: Gelöschte von Makros / VBA-Module verschwinden
Makros
Vielen Dank, Otto.
Ich wollte ganz bewusst den "Ast absägen, auf dem ich sitze". Daher ja das vorherige Abspeichern der Arbeitsmappe unter anderem Namen.
Ich versuch' es jetzt mal "von außen":
Erst neue Datei speichern und schließen,
dann wieder öffnen und aus der Ursprungsdatei heraus die Module in der neuen löschen
und die wieder speichern und schließen.
Wäre das OK?
Gruß Mike

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige