Daten aktualisieren im Makro
Schritt-für-Schritt-Anleitung
Um ein Excel-Makro zu erstellen, das Daten automatisch aktualisiert und ein weiteres Makro erst ausführt, nachdem die Aktualisierung abgeschlossen ist, folge diesen Schritten:
-
Öffne den Visual Basic for Applications (VBA) Editor:
- Drücke
ALT + F11
in Excel.
-
Erstelle das erste Makro:
Sub Makro1()
Workbooks.Open "Pfad\Zur\Deiner\Datei.xlsx" ' Pfad zur Datei anpassen
Application.Wait (Now + TimeValue("0:02:00")) ' Warten auf die Datenaktualisierung
Call Makro2 ' Startet das zweite Makro
End Sub
-
Erstelle das zweite Makro:
Sub Makro2()
' Dein Code für das zweite Makro
MsgBox "Daten wurden aktualisiert und das zweite Makro läuft jetzt."
End Sub
-
Speichern und Ausführen:
- Speichere die Änderungen und führe
Makro1
aus, um die Aktualisierung zu starten.
Häufige Fehler und Lösungen
-
Fehler: Das zweite Makro startet zu früh
Lösung: Stelle sicher, dass der Application.Wait
Befehl korrekt implementiert ist. Dies sorgt dafür, dass das zweite Makro erst nach zwei Minuten startet.
-
Fehler: Datei wird nicht gefunden
Lösung: Überprüfe den Pfad zur Datei in deinem Makro. Achte darauf, dass der Dateiname und der Pfad korrekt sind.
Alternative Methoden
-
Verwendung von DoEvents
:
Eine alternative Methode, um das zweite Makro erst nach der Aktualisierung zu starten, könnte sein, DoEvents
in einer Schleife zu verwenden, um sicherzustellen, dass das erste Makro abgeschlossen ist.
Sub Makro1()
Workbooks.Open "Pfad\Zur\Deiner\Datei.xlsx"
Dim StartTime As Double
StartTime = Timer
Do While Timer < StartTime + 120 ' 120 Sekunden warten
DoEvents
Loop
Call Makro2
End Sub
Praktische Beispiele
Hier ist ein Beispiel, wie du Excel automatisch aktualisieren kannst:
Sub AutomatischAktualisieren()
Workbooks.Open "Pfad\Zur\Deiner\Datei.xlsx"
Application.CalculateUntilAsyncQueriesDone ' Warten auf die Aktualisierung
Call Makro2
End Sub
In diesem Beispiel wird sichergestellt, dass alle Berechnungen abgeschlossen sind, bevor das nächste Makro ausgeführt wird.
Tipps für Profis
-
Verwende On Error Resume Next
: Damit kannst du Fehler im Makro abfangen, ohne dass das Makro sofort abbricht. Dies ist besonders nützlich, wenn du mit externen Datenquellen arbeitest.
-
Teste dein Makro schrittweise: Führe das Makro im Debug-Modus aus, um sicherzustellen, dass jede Zeile wie gewünscht funktioniert, bevor du das gesamte Makro laufen lässt.
FAQ: Häufige Fragen
1. Wie kann ich die Aktualisierung der Daten manuell durchführen?
Du kannst die Datei einfach öffnen und auf "Daten aktualisieren" klicken. Alternativ kannst du ein Makro erstellen, das diese Aktion ausführt.
2. Was ist, wenn die Aktualisierung länger als zwei Minuten dauert?
Du kannst die Zeit im Application.Wait
Befehl anpassen, um sicherzustellen, dass genügend Zeit für die Aktualisierung eingeplant ist.