AW: Datei mit Bedingung aktualisieren
30.05.2022 06:26:12
Max_Danger
Hallo zusammen,
mein ursprünglicher Beitrag, war ein bisschen knapp verfasst.
Anbei ein paar detaillierte Informationen, wie die Aktualisierung aufgebaut ist und wie ich es gerne optimieren möchte. :)
Ich habe insgesamt fünf Makros in der Datei im Einsatz.
Über das erste Makro werden die anderen Makros der Reihe nach ausgeführt.
Anschließend wird der Ablauf durch das Makro "StartEs" wieder erneut gestartet.
Es ist somit eine Endlosschleife.
Ich habe einen Button, auf dem ich das Makro stoppen könnte.
Da sich die Excel Datei jedoch ständig, aktualisiert ist es sehr schwierig die Aktualisierung zu stoppen.
In der Regel stoppe ich es aktuell, durch drücken der "ESC" Taste.
Jetzt stellt sich mir die Frage, ob es möglich ist, das Makro automatisch zu stoppen, wenn ein bestimmtes Ereignis eintritt.
-> Sprich es hat sich etwas in Tabelle1 Spalte C-H und Zeile 7-13 geändert.
Lässt sich so etwas überhaupt umsetzen?
Das Makro stoppt selbständig, sobald das entsprechende Ereignis eintritt und ich kann es anschließend wieder manuell starten?
1. Makro
Option Explicit
Sub StartMakro()
Datenactual
PivotRefresh
StartEs
End Sub
2. Makro
Option Explicit
Sub Datenactual()
Windows("Daten.xlsm").Activate
Application.DisplayAlerts = False
ActiveWorkbook.RefreshAll
End Sub
3. Makro
Option Explicit
Sub PivotRefresh()
Windows("Daten.xlsm").Activate
Dim pc As PivotCache
For Each pc In ActiveWorkbook.PivotCaches
If pc.SourceType = xlExternal Then pc.BackgroundQuery = False
pc.Refresh
Next
End Sub
4. Makro
Option Explicit
Dim iTimerSet As Double
Public Sub StartEs()
iTimerSet = Now + TimeValue("00:00:01")
Application.OnTime iTimerSet, "StartMakro"
End Sub
5. Makro
Public Sub StopEs()
Application.OnTime iTimerSet, "StartMakro", , False
End Sub
Über Tipps & Tricks würde ich mich sehr freuen.
Viele Grüße
Max