Hallo liebe Community.
Wie schon im Betreffe steht möchte ich gerne mittels VBA, die Aktive XLS als Kopie speichern und dabei den VBA Code Löschen.
Habe leider keine Kenntnisse in VBA.
Bei der Suche im Internet bin ich auf diverse Codes gestoßen, aber ich komme nicht mehr weiter.
Meine Excel heißen: Auflistung_001.xls; Auflistung_002.xls, ....+
Die VBA- Codes die zu Löschen sind sind: Abfrage (=Userform); Modul1 (=Modul) & div. VBA- Codes in Tabelle1(Auflistung); Tabelle2(Zusammenf), Tabelle3(Ausdruck)
Ich muß die Excel weitermailen, aber ohne bestehenden VBA Code. VBA- Code per Code schützen kommt eher nicht in Frage, er sollte doch gelöscht werden.
Habe den Code unten gefunden, aber weiß nicht wo man in hinschreibt und ihn Anwendet.
Kann mir jemand helfen?
Code:
Rem Diese Prozedur zum Löschen aufrufen
Sub Alles_löschen()
Call Lösche_Module
Call Lösche_Userformen
Call Lösche_Ereignisprozeduren
End SubSub Lösche_Module()
Rem Löscht Module:
For n = ActiveWorkbook.VBProject.vbComponents.Count To 1 Step -1
If ActiveWorkbook.VBProject.vbComponents(n).Type = 1 Then
ActiveWorkbook.VBProject.vbComponents(n).Collection.Remove _
ActiveWorkbook.VBProject.vbComponents(n)
End If
Next
End Sub
Sub Lösche_Userformen()
Rem Löscht Userforms:
For n = ActiveWorkbook.VBProject.vbComponents.Count To 1 Step -1
If ActiveWorkbook.VBProject.vbComponents(n).Type = 3 Then
ActiveWorkbook.VBProject.vbComponents(n).Collection.Remove _
ActiveWorkbook.VBProject.vbComponents(n)
End If
Next
End Sub
Sub Lösche_Ereignisprozeduren()
Rem Löscht Ereignisprozeduren:
For n = ActiveWorkbook.VBProject.vbComponents.Count To 1 Step -1
For i = 1 To ActiveWorkbook.VBProject.vbComponents(n).CodeModule.CountOfLines
If ActiveWorkbook.VBProject.vbComponents(n).Type <> 1 And _
ActiveWorkbook.VBProject.vbComponents(n).Type <> 3 Then _
ActiveWorkbook.VBProject.vbComponents(n).CodeModule.DeleteLines 1
Next
Next
End Sub
------------------
Grüße
Christian
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP