Yuvals Lösung könnte ausreichen, aber nur, wenn Änderungen auf den Zellinhalt beschränkt sind. Der Ermittler hat nicht angegeben, ob dies der Fall ist. Dennoch: Was ist, wenn die Änderung, die Sie übernehmen möchten, das Hinzufügen (möglicherweise sogar Entfernen) von Arbeitsblättern in der Arbeitsmappe ist?
Eine Art spröde und glückliche Lösung: Speichern Sie ein Makro in Ihrer versteckten PERSONAL.XLS (B), um eine regelmäßige (durch Neuplanung) Arbeitsmappe zu schließen und erneut zu öffnen. PERSONAL.XLS (B) sollte unter% USERPROFILE% \ AppData \ Roaming \ Microsoft \ Excel \ XLSTART \) gefunden werden.
Sub wkbRefresher()
Dim refreshedWorkbook As Workbook
Dim WkBks As Workbooks
'full filepath
fPath = "c:\tmp\mutatingWorkbook.xls"
'in HH:MM:SS format:
refreshInterval = "00:05:00"
For i = 1 To Application.Workbooks.Count
Debug.Print (Application.Workbooks.Item(i).FullName)
If LCase(Application.Workbooks.Item(i).FullName) = LCase(fPath) Then
Debug.Print (" Yep thats the one! Lets refresh it.")
Application.Workbooks.Item(i).Close
'refreshedWorkbook = WkBks.Open(fPath, True, True)
Set refreshedWorkbook = Excel.Application.Workbooks.Open(fPath, True, True)
End If
Next i
' Use at your own risk: this is an "asynchronous", the execution cannot be stopped by merely pressing the stop button in the VBA interface.
' You might have to do something like put a break marker on the line OnTime line so that next time around, it doesn't respawn itself.
Application.OnTime Now + TimeValue(refreshInterval), "wkbRefresher"
End Sub
Natürlich kann das obige Sub parametriert werden und / oder Sie können es an eine benutzerdefinierte Symbolleistenschaltfläche oder etwas anhängen. Da beim Speichern der Arbeitsmappe die Statusinformationen für das aktive Blatt, die aktive Zelle usw. gespeichert werden, möchten Sie möglicherweise auch einige Zeilen einfügen, um Ihren bevorzugten Namen für das aktive Blatt zu speichern und ihn jedes Mal nach einem erneuten Öffnen erneut zu aktivieren.
Verweise:
http://office.microsoft.com/en-us/excel-help/run-a-macro-HP010342865.aspx
http://msdn.microsoft.com/en-us/library/office/ff196165(v=office .14) .aspx
Obwohl ich nicht alles überprüft habe, scheint dies eine sehr hilfreiche Einführung zu sein, wenn Sie noch nichts von PERSONAL.XLS (B) gehört haben: http://www.rondebruin.nl/win/personal.htm