Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1632to1636
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

Laufzeitschwankung Makro/Speichern

Laufzeitschwankung Makro/Speichern
24.07.2018 18:18:03
kathrin
Hallo,
ich habe ein Projekt bei dem 8-10 Leute in einer freigegebenen Arbeitsmappe parallel arbeiten. Die Datei hat eine Größe von ca. 700KB (welche während der Nutzung auf bis zu 1.5MB anwächst). Neben wenigen Formeln enthält die Arbeitsmappe auch einige Makros die von den Mitarbeitern ausgeführt werden.
Nun haben wir bei der Ausführung eines dieser Makros folgendes Problem: Normalerweise benötigt das Makro zur Ausführung ca. 1-5s. In manchen Fällen braucht es jedoch plötzlich 20-50s. In diesen Fällen wird der Bildschirm oft auch weiß und Excel zeigt „Keine Rückmeldung“ an.
Das Makro (leicht vereinfacht):

Private Sub Btn_DatenImport_Click()
On Error GoTo Fehler
Application.ScreenUpdating = False
Dim s as Double
‘Mappe aktualisieren
s = Timer
ActiveWorkbook.AcceptAllChanges
Debug.Print “Aktualisieren: “ & Timer – s
‘Zwischenablage in bestimmten Bereich einfügen
Dim wksDaten as Worksheet
Set wksDaten = Worksheet(“Daten”)
wksDaten.Cells(4,1).PasteSpecial
‘Makro für Verarbeitung von Datenimport aufrufen
s = Timer
Call Tabelle5.Import
Debug.Print „Import: „ & Timer – s
‚Arbeitsmappe speichern
s = Timer
Application.DisplayAlerts = False
ThisWorkbook.Save
Application.DisplayAlerts = True
Debug.Print „Speichern: „ & Timer – s
Exit Sub
Fehler:
Msgbox Err.Description
End Sub

Um herauszufinden, wo der große Zeitzuwachs liegt, habe ich versucht schonmal eine einfache Zeitmessung einzubauen. Dabei fällt bei langer Laufzeit ca. 90% und mehr auf das Aktualisieren (wenn ich stattdessen Speichern nehme ist es das Gleiche). Zudem haben wir beobachtet, dass andere Nutzer während das Makro dort "hängt" weiterhin ohne Probleme die Arbeitsmappe speichern können (was ja normalerweise nicht möglich ist, während ein anderer Nutzer speichert). Ein Befehl zum Speichern der Arbeitsmappe findet sich auch in anderen Makros, dort konnte aber so eine lange Laufzeit bisher nicht beobachtet werden.
Ich konnte bisher auch keinen besonderen Zusammenhang beobachten, wann dieses Problem auftritt. Die Inputdaten unterscheiden sich bei den verschiedenen Ausführungen auch kaum, hier scheint das Problem eher nicht zu liegen. Auch die Zeitspanne die seit dem letzten Speichern zurück liegt, scheint nicht das Kriterium zu sein. Ich bin daher etwas ratlos…würde das Makro immer so lange benötigen, dann wüsste ich wenigstens dass es am Makro liegt und könnte das auch besser testen. Aber so fällt es auch schwer das Problem im Test zu reproduzieren.
Habt ihr eine Idee wo die Ursache für die stark schwankende Ausführungszeit liegen kann? Ist das wirklich das Speichern? Liegt es vielleicht an Netzwerkproblemen / Arbeitsspeicher o.ä.? Oder vielleicht an dem aufgerufenen Makro Import? (Hier werden einige Tabellenbereiche in Arrrays eingelesen, leicht verändert und zurückgeschrieben). Irgendwelche Ideen wie man das Problem abstellen kann?
Wir haben inzwischen die Priorität für Excel auf Hoch eingestellt, seitdem stürzt es zumindest nicht mehr komplett ab (was vorher manchmal passiert ist), aber die langen Laufzeiten bleiben weiterhin.
An dieser Stelle schon einmal herzlichen Dank für jede Hilfe und Ideen!
Viele Grüße
Kathrin

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

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitschwankung Makro/Speichern
25.07.2018 15:06:55
ChrisL
Hi Kathrin
Die individuelle Ansicht (z.B. Zoom Einstellung) jedes Benutzers wird gespeichert (darum die Zunahme der Dateigrösse).
Hier mal deaktivieren:
Userbild
Quelle:
https://www.pcreview.co.uk/threads/shared-workbook-slow-opening-of-shared-workbook.3225917/
Scheint mir ein Versuch wert zu sein.
cu
Chris
AW: Laufzeitschwankung Makro/Speichern
25.07.2018 15:43:30
kathrin
Hallo Chris,
Danke für den Tipp. Die Einstellungen haben wir bereits heraus genommen und auch den Änderungsverlauf. Damit ist es etwas besser. Die Dateigröße wächst weiterhin während der Benutzung an, aber das ist soweit ich weiß bei freigegebenen Arbeitsmappen ja normal. Sobald ein Benutzer die Mappe schließt wird die Dateigröße auch wieder kleiner. Ich glaube nicht, dass hier der Grund für die Laufzeitschwankungen liegt, denn dann müsste die Laufzeit doch konstant länger sein oder?
Gruß
Kathrin
Anzeige
AW: Laufzeitschwankung Makro/Speichern
25.07.2018 16:30:10
ChrisL
Hi Kathrin
Ich lasse die Frage offen.
Hängt es vielleicht generell mit der Anzahl User, welche die Datei gleichzeitig geöffnet haben, zusammen?
Wenn grundsätzlich ja, dann vielleicht mit der Reihenfolge, wer die Datei zuerst geöffnet hat?
Oder sind es immer die gleichen User, welche längere oder kürzere Laufzeiten haben?
Grundsätzlich kannst du wohl nicht viel ändern (ausser z.B. auf eine Access oder andere Lösung auszuweichen). Die Synchronisierung und Speicherung von Benutzer-spezifischen Daten erfordert eine gewisse Leistung.
Einflussfaktoren können Netzwerk-, Hardware- oder Softwareprobleme sein. Möglich ist alles, aber dann würde es tendenziell immer bei den gleichen Usern auftreten (ausser bei generellen sporadischen Netzwerkproblemen, aber die würden sich wahrscheinlich auch anderweitig bemerkbar machen).
cu
Chris
Anzeige
AW: Laufzeitschwankung Makro/Speichern
25.07.2018 16:45:56
kathrin
Hallo Chris,
Die Anzahl Nutzer ist eigentlich konstant. Aber ja, der Fehler ist eigentlich nur aufgetreten wenn wir mit mehreren Benutzern in der Datei waren. Wenn ich die Datei alleine oder mit einem weiteren Benutzer getestet habe, ist dieses Problem nicht aufgetreten. Von dem her besteht hier vermutlich ein Zusammenhang.
Das lange Speichern ist bisher an zwei verschiedenen Arbeitsplätzen aufgetreten. Und gerade an diesen beiden Arbeitsplätzen wird eben das oben beschriebene Makro ausgeführt, weswegen ich eher da den Zusammenhang gesehen habe. Von der Hardware sind alle Arbeitsplätze vergleichbar.
Ich habe schon vermutet, dass es wahrscheinlich ein Rätsel bleiben wird. Vor allem da es eben nur sporadisch auftritt. Aber wir wollten nichts unversucht lassen und dachten vielleicht kennt ja irgendjemand das Problem und hat eine Ursache/Lösung dafür.
Der letzte Test gestern ist ohne Probleme gelaufen und ich hoffe, das dies nun so bleibt. Ansonsten sollte das Tool im Idealfall sowieso nur eine Zwischenlösung sein. Mir ist bewusst, dass Excel eigentlich nicht das richtige Werkzeug in diesem Fall ist. Aber es war das Einzige was für diesen Anwendungsfall schnell und einfach verfügbar war. Mit den gesammelten Erfahrungen wird dann hoffentlich eine bessere Lösung entwickelt.
Vielen Dank für deine Mühe.
Gruß
Kathrin
Anzeige
AW: Laufzeitschwankung Makro/Speichern
25.07.2018 17:07:43
ChrisL
Hi nochmal
Ich hätte trotzdem noch eine Theorie.
Call Tabelle5.Import
Blackbox, aber wenn hier "grossflächig" aktualisiert wird, dann gibt es beim Speichern entsprechend viel zu synchronisieren.
cu
Chris
AW: Laufzeitschwankung Makro/Speichern
25.07.2018 18:09:24
kathrin
Hi,
in dem Makro werden tatsächlich eine größere Menge an Zellen geschrieben, aber müsste dann nicht die Synchronisation NACH dem Makro so lange dauern? Bzw. die Synchronisation bei allen Benutzern wenn das Makro ausgeführt wurde? Oder ist die Zeitmessung so wie ich sie verwendet habe so nicht wirklich zuverlässig und die Zeit könnte ggf. doch in dem Makro bzw. dem Speichern danach liegen? (Die Ausgabe lässt ja das erste Aktualisieren vermuten). Wirklich verändert werden nur die Inhalte recht weniger Zellen, da aber das schreiben in einzelne Zellen länger dauert als alles auf einmal zu schreiben, habe ich mich dafür entschieden jeweils die ganze Matrix einzulesen und modifiziert wieder auszugeben. In sofern ist die Menge an Daten die bei dem Makro geschrieben werden auch eigentlich immer gleich. Dann sollte also auch der Synchronisationsaufwand nach meinem Verständnis immer der gleiche sein.
VG Kathrin
Anzeige
AW: Laufzeitschwankung Makro/Speichern
25.07.2018 18:31:52
ChrisL
Hi Kathrina
Ob es an der Datenmenge liegt, kannst du ja mal testen (Matrix verkleinern).
DoEvents

bringt vermutlich auch nichts, aber eine Idee.
Ich habe keine Ahnung wie die Synchronisation im Detail abläuft. Vielleicht "sternförmig", weshalb der Rechner der speichert die grösste Last hat. Oder auch nicht, kein Plan.
cu
Chris
AW: Laufzeitschwankung Makro/Speichern
25.07.2018 18:47:04
kathrin
Hallo Chris,
wenn ich die Woche mal die Möglichkeit bekomme das außerhalb des regulären Betriebs mit 5-8 Rechnern gleichzeitig zu testen, probiere ich die Ideen mal aus. Do Events hatte ich schonmal an einer Stelle eingebaut, da hatte es aber keine spürbare Auswirkung gehabt. Da habe ich wenig Hoffnung. Aber die zu schreibenden Daten verringern könnte ich nochmal ausprobieren. In der Praxis brauchen wir zwar die ganze Matrix, aber wenn es mit weniger klappt, dann weiß man vielleicht wenigstens wo das Problem liegt.
Ggf. dann auch nochmal an einem Arbeitsplatz ein Makro das alle x Minuten automatisch speichert und die Zeit misst. Wenn das Problem tatsächlich am Speichern liegt und ggf. auch an Netzwerkschwankungen o.ä. müsste es ja dann auch dort auftreten ohne dass ich den Datenimport mache.
Die Tatsache, dass die Ausreißer nach oben so unregelmäßig auftreten macht das testen natürlich nicht einfach. Da brauche ich dann wohl Geduld ;)
Vielen Dank nochmal für alle Ideen.
VG Kathrin
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige