Anzeige
Archiv - Navigation
1400to1404
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
Inhaltsverzeichnis

Makro auf Windows Shutdown reagieren lassen

Makro auf Windows Shutdown reagieren lassen
05.01.2015 16:02:52
Alex

Hallo Excel Profis,
ich hab eigentlich nur Grundkenntnisse in vba, weshalb ich hier echt gegen ne Wand lauf ;)
mein Ziel ist, bei einem Windows Shutdown unter Windows 7 kurz vorher noch vba Code aus Excel 2010 ausführen zu lassen.
Leider funktionniert beim Shutdown ja kein beforeclose Ereignis. Googeln hat mich bisher leider auch nicht weiter gebracht.
Mit ist es aber wichtig, dass der Code wirklich erst beim Herunterfahren des Systems ausgeführt wird. In meinem beforeclose wird da noch ne Klasse zerstört (weil es sonst beim nächsten Excelstart zu Fehlern kommt) und die aktuelle Uhrzeit eingetragen.
Ich betone also lieber nochmal, dass es mir wirklich wichtig ist mein (eigentlich) beforeclose Ereignis auch beim Herunterfahren des Rechners funzen zu lassen
Also Excel im Grunde erkennen lassen, dass Windows mitm Shutdown beginnt, und sich selbst vorher regular beenden lassen - dann würd beforeclose ja hoffentlich ausgelöst werden.
Allerdings muss das ganze trotzdem automatisiert bleiben, sodass der Nutzer selber nur das System beenden muss. Manuelle Änderungen in ner Gruppenrichtlinie fallen damit wahrscheinlich auch raus...
Kann man eventuell den Shutdown-Prozess überwachen, erkennen, abfangen und verzögern? Auch hab ich gelesen, dass Windows 7 wohl eigene Ordner hat aus denen beim Startup und Shutdown Scripte ausgelesen werden können. Kann man da irgendwie aus Excel heraus ein Script anlegen lassen, das ihrerseits beim Shutdown Excel regular beendet?
Beide Ansätze liegen halt deutlich über meinen Kenntnissen, weswegen ich da alleine nicht mehr weiterkomm ;)
Ich hoffe ihr könnt mir weiterhelfen
Liebe Grüße
Alex

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro auf Windows Shutdown reagieren lassen
05.01.2015 21:15:32
Oberschlumpf
Hi Alex
Auf die Schnelle hab ich das hier gefunden:
http://www.cpearson.com/excel/ExcelShutdown.htm
Da ich aber a) nicht weiß, ob du englisch verstehst, und b) auch nicht weiß (wenn du Englisch kannst), ob du das in deinen Code übernehmen kannst, lass ich deine Frage mal offen.
Vielleicht kann ja jemand mit mehr VBA-Wissen + "meinem" Link helfen.
Ciao
Thorsten

AW: Makro auf Windows Shutdown reagieren lassen
06.01.2015 11:44:26
Alex
Danke dir, Thorsten,
Englisch ist kein Problem. Ich bin am Donnerstag erst wieder auf der Arbeit und komm dann erst an meine Dateien ran, werde aber dann direkt mal ausprobieren ob ich das verwenden kann. Vom Verständnis her passts erst mal, wenn man außer acht lässt, dass ich den Codeaufbau vom AddIn und dem Excel Modul nicht versteh :P aber was nicht ist, kann noch werden.
Gruß
Alex

Anzeige
AW: Makro auf Windows Shutdown reagieren lassen
06.01.2015 12:07:48
Hajo_Zi
Hallo Alex,
ich hätte von Deiner Wortwahl abgeleitet das Problem ist erstmal geklärt?

AW: Makro auf Windows Shutdown reagieren lassen
06.01.2015 16:18:29
Alex
Jap,
habe jetzt was, das ich ausprobieren kann. Also bis ichs versucht hab, ein close dahinter. Und Danke!
Gruß
Alex

AW: Makro auf Windows Shutdown reagieren lassen
08.01.2015 10:37:16
Alex
Hallo nochmal,
stoße jetzt auf ein wirklich banales Problem...
in der vom Thorsten vorgeschlagenen Anleitung ist von einem COM Add-In die Rede. Das finde ich auf der Seite allerdings nicht, obwohl als erster Schritt beschrieben ist, dass man es in seiner Tabelle einbinden soll.
Oder ist es deckungsgleich mit dem Modul (modHiddenNames), das mit ua mit einbinden soll? Fall ja, wie speicher ich das als COM Add-In ab? Es ist ja scheinbar was anderes, als es als .xla bzw .xlam abzulegen.
Ansonsten scheints ja fast klar zu sein:
1. COM Add-In einbinden
2. Modul einbinden
3. zwei Konstanten definierern:
Private Const C_RUN_ON_USER_CLOSE = "RunOnUserClose"
Private Const C_RUN_ON_HOST_SHUTDOWN = "RunOnHostShutdown"

3. folgende Zeile mit meinem eigenen Makronamen eintragen (statt "'!RunThisOnHostShutdown"):
AddHiddenName HiddenName:=C_RUN_ON_HOST_SHUTDOWN, _
NameValue:="'" & ThisWorkbook.Name & "'!RunThisOnHostShutdown", OverWriteExisting:=True

Was ich da auch nicht ganz verstehe ist, wo ich die Codezeilen einfügen soll: Im COM Add-In, im Modul modHiddenNames, oder im Codefenster der Arbeitsmappe (beim letzteren hab ich ja dann nichts was die Prozedur ausführt ohne Ereignis, oder?)
Hier ist nochmal der Link zur Anleitung:
http://www.cpearson.com/excel/ExcelShutdown.htm
Tut mir Leid für dieses Chaos und vielen Dank für eure Hilfe bis jetzt!
Gruß
Alex

Anzeige
AW: Makro auf Windows Shutdown reagieren lassen
08.01.2015 10:39:08
Alex
Ah, sry für den dreifach post, hab vergessen die Frage auf offen zu setzen...

AW: Makro auf Windows Shutdown reagieren lassen
08.01.2015 10:50:43
EtoPHG
Hallo Alex,
Ein CAI (COM Add IN) ist was komplett anderes, wie ein Excel-VBA-AddIn.
Ein CAI wird z.B. in Visual Basic 6 ff. als ActiveX oder DDL Komponente erstellt, kompiliert und als installierbare Komponente den Anwendern zur Verfügung gestellt.
Du kannst also den Code nicht einfach in VBA übernehmen, aber du findest auf der Pearson Software Consulting Site mehr Informationen unter Creating A COM Add In mehr Informationen.
Gruess Hansueli

Anzeige
AW: Makro auf Windows Shutdown reagieren lassen
08.01.2015 11:01:20
Alex
Okay, werde mich da mal durchlesen. Zu meinen anderen Fragen: muss ich den Code dann letztlich trotzdem doppelt drinhaben, einmal als COM-Addin und einmal als Modul? Ein vorgefertigtes COM Addin ist ja nicht auf der Seite, obwohl drinsteht, dass ich das einfügen soll.
Der Rest hat entsprechend erstmal keine Eile, muss mich zuerst hier mal durchkauen.
Danke dir.
Gruß
Alex

AW: Makro auf Windows Shutdown reagieren lassen
08.01.2015 11:17:37
EtoPHG
Hallo Alex,
Ich habe das unbestimmte Gefühl, dass dies für deine VBA-Basiskenntnisse eine Nummer zu gross ist.
Wenn du die einfacheren Beispiele auf der erwähnten Seite durcharbeitest, kommst du vielleicht zum Ziel. Aber das Abfangen eines Windows-Shutdowns, geht schon tief in OS und Excelkenntnisse und ist nicht in 2 oder 3 Sätzen zu erläutern. Versuch das Zip-File (auf deiner verlinkten Seite) und dessen Komponenten zu verstehen, du brauchst alles, was dort drin ist und v.a. brauchst du eine funktionsfähige VisualBasic 6.0 Entwicklungsumgebung, damit du später das CAI installieren kannst!
Gruess Hansueli

Anzeige
AW: Makro auf Windows Shutdown reagieren lassen
08.01.2015 11:26:20
Alex
Hallo Hansueli,
da hast du allerdings Recht, das ist für mich grad ziemlich heftig. Aber sowohl die Anleitung die Thorsten gefunden hat, als auch die von dir zu COM Add-Ins sind ziemlich gut und für Anfänger verständlich, deswegen sehe ich da grad noch nicht ganz schwarz ;) als Entwicklungsumgebung wird ja (hoffentlich) der vbe von Excel reichen. Wenn nicht, komm ich dazu wenn ich mich durch deine Anleitung durchgearbeitet hab.
Gruß
Alex

AW: Makro auf Windows Shutdown reagieren lassen
08.01.2015 12:34:39
EtoPHG
Hallo Alex,
Zitat: als Entwicklungsumgebung wird ja (hoffentlich) der vbe von Excel reichen.
Nein, eben nicht. VBA ist eine interpretierte Sprache und du kannst mit dieser Umgebung keine unabhängig installier- und executierbare Komponenten (z.B. DLL) erzeugen. Du musst eine VB 6.0 ff. Entwicklungsumgebung haben um EXE oder DLL erzeugen zu können!
Gruess Hansueli

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige