Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
908to912
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
908to912
908to912
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Modul in anderer Mappe löschen

Modul in anderer Mappe löschen
22.09.2007 15:41:28
Andy
Hallo Leute.
Vielleicht habt Ihr noch eine Idee.. Ich weiss echt nicht mehr weiter:-(
Folgendes Problem.
Ich habe bei ca. 30 Leuten auf den jeweiligen Rechnern Tabellen (Jahresstatistik2007P.xls), in welchem das Modul1 zu finden ist.
Aufgrund einer Laufwerksumstellung müsste ich dieses Modul austauschen, also quasi "updaten".
Mein folgender Code ruft nun aus einer neuen Datei heraus die Dateien mit dem "fehlerhaften" Modul auf und sollte das dort enthaltene Modul1 löschen. --> Tut es aber nicht. Er läuft einfach drüber.
Die danach folgende Prozedur mit dem Importieren des neuen Moduls funktioniert super. Nur habe ich dann immer noch das "Falsche" Modul1 drin.
Ich hoffe ihr könnt mir helfen..
Hier mein bisheriger Code:

Sub Main_aufruf()
Call datei_aufrufen
Call DeleteModule
Call neu_modul
End Sub



Sub datei_aufrufen()
pfad = ThisWorkbook.Path & "\Jahresstatistik2007P.xls"
Workbooks.Open (pfad)
Windows("Jahresstatistik2007P.xls").Activate
End Sub



Sub DeleteModule()
Dim VBComp As VBComponent
Set VBComp = Workbooks("Jahresstatistik2007P.xls").VBProject.VBComponents("Modul1")
Workbooks("Jahresstatistik2007P.xls").VBProject.VBComponents.Remove VBComp
End Sub



Sub neu_modul()
ModName = ThisWorkbook.Path & "\Modul1_neu.bas"
Workbooks("Jahresstatistik2007P.xls").VBProject.VBComponents.Import ModName
Workbooks("Jahresstatistik2007P.xls").Save
Workbooks("Jahresstatistik2007P.xls").Close
'Workbooks("Modulupdate1.1.xls").Close SaveChanges:=False
End Sub


8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Modul in anderer Mappe löschen
22.09.2007 15:58:00
Hubert
Hi,
sieht eigentlich sauber aus, probier mal Late Binding:
Dim VBComp As Object
mfg Hubert

AW: Modul in anderer Mappe löschen
22.09.2007 16:07:00
Andy
Hallo Hubert..
Danke erstmal für die schnelle Antwort. Aba das wars leider auch nicht. Das alte Modul bleibt drin und das neue wird hinzugefügt :-(
Ich hatte grad noch weiter probiert und herausgefunden, dass, wenn ich die Mappe offen habe, und dann
meine Prozedur "DeleteModule" ausführe, das modul gelöscht wird. Aber im Verbund mit meinen anderen Prozeduren klappt das nicht. Aber ich weiss nicht warum...
Andy

AW: Modul in anderer Mappe löschen
22.09.2007 17:32:00
Hubert
Hi,
hast du mal probiert, die Mappe (mit dem entfernten Modul) nach dem Entfernen zu speichern?
mfg Hubert

Anzeige
AW: Modul in anderer Mappe löschen
22.09.2007 18:20:00
Andy
Halloo
Ja, hab ich grad mal probiert.. Aber das gleiche Ergebnis, also zwei Module.
Mir ist dann grad noch was eingefallen.
Und zwar habe ich in der Tabelle mit dem zu entfernenden Modul eine Autoopen Prozedur drin.
Wenn ich diese ausschalte, dann läuft der Code 1A durch. Aus welchem Grunde auch immer, ich kann's mir nicht erklären.
Das wäre also die Lösung. Stellt sich noch die Frage wie ich die Open Prozedur zunächst ausstelle und nach dem "Update" wieder einstelle.
Am besten vielleicht mit einem Hochkomma davor. Ist das möglich?
Ich werd mich wohl mal dadran probieren müssen.
Wenn du ganz spontan dafür ne Lösung hast wäre ich dir seeehr dankbar!!!
Andy

Anzeige
AW: Modul in anderer Mappe löschen
22.09.2007 18:26:00
Renee
Hi Andy,
Öffne Deine Datei so:

Sub datei_aufrufen()
pfad = ThisWorkbook.Path & "\Jahresstatistik2007P.xls"
Application.EnableEvents = False
Workbooks.Open (pfad)
Windows("Jahresstatistik2007P.xls").Activate
End Sub


AW: Modul in anderer Mappe löschen
22.09.2007 18:39:31
Andy
Oh super geil!!!
Dankeee!!
Das wars!
ein schönes Wochenende!!
greetz Andy

Nachtrag, nicht vergessen...
22.09.2007 19:47:00
Renee
Hallo Andy,
Wenn Dein Code alles erledigt hat, solltest Du unbedingt noch ein:

Application.EnableEvents = True


einbauen, vor dem definitiven Ende, sonst funktioniert vielleicht anderer Code nimmer.
GreetZ Renee

Anzeige
AW: Nachtrag, nicht vergessen...
22.09.2007 23:42:11
Andy
hey renee!
danke :-))

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige