Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1520to1524
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeitgesteuert aktualisieren und speichern

Zeitgesteuert aktualisieren und speichern
17.10.2016 14:34:53
Alesandro
Liebe Community,
ich möchte jeden Tag morgens um 04:30 eine Arbeitsmappe mit DB-Verbindungen aktualisieren und mit dem selben Namen speichern.
Zum Öffnen der Arbeitsmappe habe ich in der Aufgabenplanung einen Task eingerichtet.
Ich habe mir gedacht, dass ich mittels Workbook_Open um 04:31 (eine Minute nach Öffnen der Arbeitsmappe) die Aktualisierung der DB-Verbindung aufrufe und 10 min später speichere und schließe.
Hier mein nicht funktionierender Code:

Private Sub Workbook_Open()
Application.OnTime TimeValue("04:31:00"), "DB_Verbindungen_aktualisieren"
Application.OnTime Now + TimeValue("00:10:00"), "Shutdown"
End Sub
Sub DB_Verbindungen_aktualisieren()
ActiveWorkbook.RefreshAll
End Sub Sub Shutdown()
ThisWorkbook.Close savechanges:=True
End Sub

Wichtig ist, dass das Makro beim Öffnen während des Tages nicht ausgelöst werden darf.
Daher die Idee mit:
Application.OnTime TimeValue("04:31:00"), "DB_Verbindungen_aktualisieren"
Vielleicht kann mir eine "Gute Seele" helfen das hinzubekommen.
Vielen Dank
lg Alesandro

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeitgesteuert aktualisieren und speichern
17.10.2016 15:20:01
ChrisL
Hi Alesandro
Sofern zwischen 0.00 und 4.30 Uhr niemand arbeitet, würde ich einfach nur das Datum der Aktualisierung speichern. Das Hilfsblatt kannst du ausblenden.
Private Sub Workbook_Open()
With Worksheets("Hilfsblatt").Range("A1")
If Not .Value = Date Then
.Value = Date
Call Verbindungen_aktualisieren
End If
End With
End Sub
Sub DB_Verbindungen_aktualisieren()
ThisWorkbook.RefreshAll
ThisWorkbook.Close savechanges:=True
End Sub
cu
Chris
AW: Zeitgesteuert aktualisieren und speichern
17.10.2016 15:50:08
Alesandro
Servus Chris,
habe den Code in "Diese Arbeitsmappe" eingefügt und anschliessend über die Aufgabenplanung das File geöffnet.
Es wird jedoch nur das Datum in die Zelle A1 der Hilfstabelle geschrieben.
Ich habe bei Call ausgebessert auf DB_Verbindungen_aktualisieren.
Das hat leider nicht geholfen.
Kannst du bitte nochmals drüberschaun.
Danke,
lg Alesandro
Anzeige
AW: Zeitgesteuert aktualisieren und speichern
17.10.2016 15:53:26
ChrisL
Hi Alesandro
Wenn das Tagesdatum einmal in der Zelle steht, dann wird der Code nicht mehr ausgeführt resp. erst wieder am nächsten Tag. Also einfach nochmal das Datum in A1 löschen.
cu
Chris
AW: Zeitgesteuert aktualisieren und speichern
17.10.2016 15:56:10
Alesandro
Servus,
ich habe das Datum aus A1 gelöscht.
Funzt aber net :-(
lg Alesandro
AW: Zeitgesteuert aktualisieren und speichern
17.10.2016 16:11:00
ChrisL
Hi
Teste mal mit...
Sub DB_Verbindungen_aktualisieren()
MsgBox "Hallo"
End Sub
Kommt beim Öffnen ein Hallo oder nicht?
cu
Chris
AW: Zeitgesteuert aktualisieren und speichern
17.10.2016 16:19:18
ChrisL
Falls nein:
Poste noch einmal deinen aktuellen Code.
Falls ja:
Vielleicht wird gespeichert bevor Refresh vollständig durchgeführt wurde. Evtl. hilft:
ThisWorkbook.RefreshAll
Application.CalculateUntilAsyncQueriesDone
Anzeige
AW: Zeitgesteuert aktualisieren und speichern
17.10.2016 16:36:20
Alesandro
Hi,
mit Application.CalculateUntilAsyncQueriesDone
funktioniert es.
Vielen Dank.
lg Alesandro
AW: Zeitgesteuert aktualisieren und speichern
17.10.2016 17:51:25
ChrisL
Hi Alesandro
Werde mal bitte etwas deutlicher.
Funktioniert der Call Aufruf oder nicht? (=Test mit der MsgBox)
Wie sieht dein Code nun aus? abgesehen von meinem Flüchtigkeitsfehler nichts abgeändert?
RefreshAll ohne den Rest funktioniert? (=in einem separaten Makro testen)
cu
Chris

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige