2016-10-10 2 views
3

Ich versuche, ein Makro zu erstellen, um eine ms-Projektdatei in einem bestimmten Format an einem bestimmten Speicherort in einem festgelegten Intervall zu speichern, während die Anwendung geöffnet ist. Ich habe es meistens funktioniert, außer die Ausführung in einem Intervallteil.Ausführen von Makros im Zeitintervall in MS-Projekt

Ich hatte ein wenig von einem Google herum und wenn Sie Excel oder Word verwenden, können Sie die Application.OnTime-Methode & ein Zeitoffset verwenden, um ein Sub im erforderlichen Intervall aufzurufen. Leider sieht es nicht so aus, als ob diese Methode in MS-Project existiert.

Gibt es eine alternative Methode, die ich hier verwenden kann oder sollte ich diese Idee aufgeben?

+0

Kannst du irgendeine Art von Ereignis verwenden? Ich nehme an, dass Sie nur die Datei speichern möchten, nachdem eine bestimmte Aktion aufgetreten ist – Jbjstam

+0

Nun, die Idee war, die Datei auf einer (etwas) regulären Basis zu speichern, so dass es als Datenquelle für eine andere Anwendung verwendet werden kann - es ist eine große Projektdatei normalerweise ganztägig geöffnet und in unregelmäßigen Abständen bearbeitet. Da die Sicherungsoperation ziemlich intensiv ist, wenn sie an ein Ereignis gebunden ist, muss sie etwas sein, das wahrscheinlich nicht häufig ausgelöst wird. Ich weiß nicht genug über VBA/Projekt, um zu wissen, wo ich anfangen soll. Ich habe die Idee an dieser Stelle sowieso aufgegeben - aber danke für Ihre Antwort. – JMP

+0

https://msdn.microsoft.com/en-us/library/office/dn254092.aspx haben Sie die Wahl :) – Jbjstam

Antwort

0

Ich weiß, dies ist eine späte Antwort, aber ich habe eine Lösung für ein ähnliches Problem. Springen Sie einfach auf das Project_Change-Ereignis, da es häufig ausgeführt wird, und vergleichen Sie es mit einer Variablen.

Public lastSave As Date 


Private Sub Project_Change(ByVal pj As Project) 


    If DateDiff("n", lastSave, Now()) > 1 Then ' Replace 1 with # of minutes between saves. 
     Application.FileSave 
     lastSave = Now() 

    End If 

End Sub 
+0

Das sieht in der Tat so aus, als würde es die Rechnung passen. Ich bin jetzt wirklich zu anderen Ideen übergegangen, aber danke! – JMP

Verwandte Themen