Ich teile ein Arbeitsblatt mit ein paar Kollegen. Diese Tabelle wird schließlich an eine externe Partei gesendet, sodass wir das VBE-Modul programmatisch als Teil des Makros entfernen. Ich habe diesen Code, der von der Microsoft-Dokumentation entnommen wurde:Laufzeitfehler '9' beim Entfernen des Moduls Excel VBA
Dim vbCom As Object
Set vbCom = Application.VBE.ActiveVBProject.VBComponents
vbCom.Remove VBComponent:= vbCom.Item("sample_module")
Es ist für einige Benutzer funktioniert, aber ich Laufzeitfehler ‚9‘ mit anderen. Der Rest des Skripts wird schließlich ausgeführt, das Modul wird jedoch nicht entfernt.
RTE 9 bedeutet „Dieser Artikel existiert nicht“ - wenn es kein Modul mit dem Namen 'sample_module' im' VBComponents' Sammlung, dann gibt es nichts zu entfernen. –
Auch wenn der Rest des Skripts ausgeführt wird, haben Sie 'On Error Resume Next' irgendwo, und das ist wahrscheinlich eine schlechte Idee. –
Es gibt jedoch ein sample_module. Einige Benutzer erhalten den Fehler und andere nicht. Für die Benutzer, die den Fehler nicht erhalten, wird das Modul entfernt. Ich habe auch keine On Error Resume Next im Skript. Ich habe das Gefühl, dass ich das Modul nicht richtig referenziere, aber ich bin nicht sicher, wie ich es angehen soll. –