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

Makro auszuführen dauert sehr lange

Makro auszuführen dauert sehr lange
19.08.2016 12:22:05
Nicolai
Hallo zusammen,
ich hatte hier aus dem Forum folgenden Code bekommen:
Z1 = TimeValue(TextBox1.Text) / TimeValue("00:15") + 1
Z2 = TimeValue(TextBox2.Text) / TimeValue("00:15") + 1
For Z = Z1 To Z2
Cells(Z, 2).Value = Cells(Z, 2).Value + 1
Next
https://www.herber.de/forum/archiv/1508to1512/t1508005.htm
Der funktioniert auch super, allerdings wenn ich eine große Zeitspanne eingebe 14:00-20:00 dauert das ausführen des Codes sehr lange.
Hat jemand von euch ein Lösungsvorschlag welchen den Prozess verbessern würde?
Vielen Dank & Grüße,
Nicolai

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro auszuführen dauert sehr lange
19.08.2016 12:35:11
Werner
Hallo Nicolai,
versuch mal am Anfang des Makros mit
Application.ScreenUpdating = False 'Bildschirmaktualisierung ausschalten
Application.Calculation = xlCalculationManual 'automat.Berechnung ausschalten
und am Ende mit
Application.Calculation = xlCalculationAutomatic 'automat.Berechnung einschalten
Application.ScreenUpdating = True 'Bildschirmaktualisierung einschalten
die Bildschirmaktualisierung und die automatische Berechnung aus und wieder einzuschalten.
Gruß Werner
AW: Makro auszuführen dauert sehr lange
19.08.2016 13:15:52
Nicolai
Hallo Werner,
vielen dank, ScreenUpdating hatte ich sogar mit drin.
Den zweiten hatten ich nicht drin, nun habe ich ihn eingebaut und es funktioniert sehr viel schneller.
Was genau wird damit auf manuell geschaltet, also was ist da der Unterscheid zwischen manuell und autom., das würde mich interessieren.
Vielen Dank & Grüße,
Nicolai
Anzeige
AW: Makro auszuführen dauert sehr lange
19.08.2016 13:23:18
Werner
Hallo Nicolai,
da wird die automatische Berechnung der Formeln im Tabellenblatt ausgeschaltet. Es kann sein, dass du Formeln auf dem Blatt hast, die bei jeder Änderung im Blatt alle neu berechnet werden und das kann dann halt dauern.
Aber hast du dir den Vorschlag von Daniel mal angeschaut?
Gruß Werner
AW: Makro auszuführen dauert sehr lange
19.08.2016 15:59:18
Nicolai
Ich hab beides mal getestet.
Sind beide super, ich werde auch nochmal testen, beide Versionen gleichzeitig zu benutzen.
Vielen Vielen Dank euch beiden.
Viele Grüße,
Nicolai
AW: Makro auszuführen dauert sehr lange
19.08.2016 16:28:22
Daniel
Hi
wenn du beim Programmieren die Eigenarten von Excelberücksichtigst und die passenden Excelwerkzeuge auch in VBA verwendest, bringt das Ausschalten der Bildschirmaktualisierung und der Automatischen Neuberechnung nur in wenigen Fällen noch eine signifikante Verbesserung der Ausführungszeit.
Gruß Daniel
Anzeige
AW: Gerne u. Danke für die Rückmeldung. o.w.T
19.08.2016 16:31:22
Werner
AW: Makro auszuführen dauert sehr lange
19.08.2016 13:04:28
Daniel
Hi
sehr schnell geht das so:
1. schreibe in eine freie Zelle (Excel hat genügend davon) den Wert 1
2. kopiere diese Zelle
3. füge das kopierte als Wert in die betroffenen Zellen ein, mit dem Vorgang Addieren
sieht als Makrocode dann so aus:
Cells(1, 1).Value = 1
Cells(1, 1).Copy
Range(Cells(Z1, 2), Cells(Z2, 2)).PasteSpecial xlpastevalues, Operation:=xladd
Cells(1, 1).ClearContents
du kannst hier im Prinzip jede leere Zelle verwenden, sie darf nur nicht innerhalb des Zellbereichs liegen, zu dem der Wert hinzuaddiert werden soll.
Gruß Daniel
Anzeige

53 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige