Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

PowerQuery Abfrage wird nicht ausgeführt.
#1
Hallo zusammen.

Ich lade in einem Excel Master File 21 andere Excel Tabellen.

Diese 21 Tabellen werden bevor ich sie lade aktualisiert.
In diesen Tabellen wird mittels PowerQuery der Datenbestand aktualisiert und dann soll die aktualisierte Version gespeichert werden.

Das ist der Code:
Public Sub Alle_Dateien_aktualisieren()
Dim str_datei As String

ChDrive ("C:\")
ChDir ("C:\Users\Kunden\xxx\Performance")
str_datei = Dir("*.xlsx", vbNormal)

Application.ScreenUpdating = False
Application.DisplayAlerts = False

Do Until str_datei = ""
    Workbooks.Open str_datei
    Application.Wait (Now + TimeValue("0:00:10"))
    ActiveWorkbook.Close savechanges:=True
    str_datei = Dir
Loop

Application.ScreenUpdating = True
Application.DisplayAlerts = True

End Sub


Mein Gedanke hierbei ist, dass nach dem Workbook.Open die Hintergrundaktualisierung startet, aber zu lange dauert.
Deshalb dann 10 Sekunden warten und danach wird geschlossen und gespeichert.

Aber das funktioniert nicht. Wird die Hintergrundaktualisierung auch gestoppt? Wie kann ich das anders machen???

Danke für einen Hinweis wie ich hier weiter komme..
Antworten Top
#2
Application.Wait stoppt die Aktualisierung, auch die im Hintergrund. Also im Vordergrund aktualisieren lassen
https://stackoverflow.com/a/25054870/6600940
Antworten Top
#3
Ich denke, du machst es dir unnötig kompliziert.

In den Abfrageeigenschaften sind standardmäßig die Optionen:

"Aktualisierung im Hintergrund zulassen" aktiv und
"Aktualisieren beim öffnen der Datei" nicht aktiv.

Ersteres bedeutet, u.a. dass bei einer per Makrobefehl angestossenen Aktualisierung, das Makro direkt weiterläuft. Ist diese Funktion jedoch daktiviert, dann wartet das Makro, bis die Aktualisierung vollständig abgeschlossen ist.

Somit ist due Deaktivierung dieser Option viel besser als das setzten einer Waittime, die fallweise immer noch zu kurz, in den meisten Fällen aber wohl viel zu lang ist.

Wenn du dies beachtest, solltest du keine Probleme mit der Aktualisierung haben.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste