kann man, und wenn ja wie, ein Modul per VBA löschen? Geht das auch mit dem, in dem die Prozedur selber steht? Ich möchte nur den Code der Tabellenblätter erhalten, alle Module sollen weg.
Holger
kann man, und wenn ja wie, ein Modul per VBA löschen? Geht das auch mit dem, in dem die Prozedur selber steht? Ich möchte nur den Code der Tabellenblätter erhalten, alle Module sollen weg.
Holger
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim VBkomp As vbComponent
On Error Resume Next
For Each VBComp In ThisWorkbook.VBProjekt.VBComponents
If VBComp.Type = 1 Then _
ThisWorkbook.VBProjekt.VBComponents.Remove VBComp
Next VBComp
End Sub
gruß Herbert
Holger
der code löscht auch das modul im dem er steht
hier mein code:
Sub modul_1_loeschen()
Application.VBE.ActiveVBProject.VBComponents.Remove _
Application.VBE.ActiveVBProject.VBComponents("modul1")
End Sub
Um ein Modul in Excel per VBA zu löschen, kannst du den folgenden Code verwenden. Dieser Code entfernt alle Module, außer den Code der Tabellenblätter:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim VBComp As VBComponent
On Error Resume Next
For Each VBComp In ThisWorkbook.VBProject.VBComponents
If VBComp.Type = 1 Then ' 1 steht für Standardmodule
ThisWorkbook.VBProject.VBComponents.Remove VBComp
End If
Next VBComp
End Sub
Um ein bestimmtes Modul zu löschen, kannst du den folgenden Code verwenden:
Sub modul_1_loeschen()
Application.VBE.ActiveVBProject.VBComponents.Remove _
Application.VBE.ActiveVBProject.VBComponents("modul1")
End Sub
Hierbei wird das Modul mit dem Namen „modul1“ entfernt. Achte darauf, dass der Name exakt übereinstimmt.
Fehler: "Projekt nicht zugänglich"
Fehler: Modul wird nicht gefunden
Eine weitere Möglichkeit, ein Modul zu löschen, besteht darin, dies manuell über die VBA-Umgebung zu tun:
ALT + F11
.Diese Methode ist hilfreich, wenn du nur gelegentlich Module löschen musst und keine Automatisierung benötigst.
Hier sind einige Beispiele, wie du den Code nutzen kannst:
Alle Module löschen, außer das aktuelle: Verwende den ersten Code aus der Schritt-für-Schritt-Anleitung, um alle Standardmodule in einem Workbook zu löschen.
Ein bestimmtes Modul löschen: Wenn du nur ein Modul namens „modul1“ entfernen möchtest, nutze den spezifischen Lösch-Code.
1. Kann ich ein Modul löschen, in dem der Lösch-Code steht?
Ja, der Code kann das Modul, in dem er steht, ebenfalls löschen. Achte jedoch darauf, dass du vor dem Löschen alle notwendigen Informationen gesichert hast.
2. Wie finde ich den Namen eines Moduls?
Im VBA-Editor kannst du im Projektbereich die Module auflisten und deren Namen ablesen. Achte auf die genaue Schreibweise, um Fehler zu vermeiden.
3. Funktioniert dieser Code in allen Excel-Versionen?
Der Code sollte in den meisten aktuellen Excel-Versionen (2010 und später) funktionieren, solange die Makros aktiviert sind und die entsprechenden Berechtigungen gesetzt sind.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen