Anzeige
Archiv - Navigation
1800to1804
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

langsamer Code

langsamer Code
17.12.2020 17:07:28
Pia
hallo,
ich habe einen Code geschrieben. Es werden in einer Schleife Zellen mit Inhalten und Formaten gefüllt. Das funktioniert auch soweit. Allerdings sind es sehr viele Zellen und der Code ist sehr langsam. Habt Ihr Verbesserungsvorschläge? Ich wäre Euch für jeden Tipp dankbar!
Und da ich bisher nur mitgelesen und hier schon viel gelernt habe, wollte ich Euch einmal ganz herzlich dafür danken!
Ihr habt mich schon mehrmals gerettet...
Liebe Grüße
Pia
Hier der Code:
Start = Cells(1, 8).Value
For n = 1 To Cells(1, 18).Value
'
Cells(5, n + 4).Style = "Header1"
Cells(5, n + 4).Value = Start
Cells(5, n + 4).NumberFormat = "MMM"
Cells(6, n + 4).Style = "Header1"
Cells(6, n + 4).Value = Start
Cells(6, n + 4).NumberFormat = "ddd"
Cells(7, n + 4).Style = "Header1"
Hfeld = "'" & Day(Start) & " " & Month(Start)
Cells(7, n + 4).Value = Hfeld
With Cells(7, n + 4).Characters(Start:=4, Length:=6).Font
.Color = -3295196
'
End With
Start = Start + 1
Next n

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: langsamer Code
17.12.2020 17:16:24
onur
Und was genau steht in Cells(1, 18)?
AW: langsamer Code
17.12.2020 17:34:31
Pia
Dort steht das Start-Datum.
AW: langsamer Code
17.12.2020 17:36:40
onur
1) wenn ich GENAU schreibe, meine ich auch GENAU.
2) Ich schrieb: "Und was genau steht in Cells(1, 18)?" und NICHT "Und was genau steht in Cells(1, 8)?".
AW: langsamer Code
17.12.2020 17:46:05
Pia
Entschuldigung, dort steht das Enddatum für die Schleife und wird eingegeben. In Cells(1, 18) ist der 31.12.2021 eingetragen.
AW: langsamer Code
17.12.2020 17:49:44
onur

For n = 1 To Cells(1, 18).Value

Dann wird der Code 44561 (31.12.2021) mal in der Schleife ausgeführt !
AW: langsamer Code
17.12.2020 17:54:49
Pia
Oh, wie konnte ich das übersehen? Manchmal sieht man den Wald vor lauter Bäumen nicht!
Ganz herzlichen Dank für die Hilfe!
Anzeige
AW: langsamer Code
17.12.2020 17:56:00
onur
Poste doch mal die Datei, dann kann ich den Code und die Datei für dich optimieren.
AW: langsamer Code
17.12.2020 18:20:32
Pia
Jetzt geht es richtig schnell. Dein waches Auge hat mir geholfen, vielen Dank nochmal!
AW: langsamer Code
17.12.2020 18:25:46
onur
Trotzdem hat dein Code Optimierungsbedarf.
Du brauchst die Zellen nicht in einer Schleife alle einzeln anzusprechen. Wenn du gleich den ganzen Bereich ansprichst, brauchst du gar keine Schleifen.
Das Datum würde ich via Formel eintragen lassen (erste Spalte Anfangsdatum und alle anderen daneben: =ZS(-1)+1.
AW: langsamer Code
17.12.2020 17:54:00
Yal
@onur: nicht verzweifeln ;-)
@Pia,
1 ist 01.01.1900
und 31.12.2021 ist 44561
Willst Du wirklich 44k Zellen befüllen?
Schaltet vor dem Gesamt
Application.ScreenUpdating = False
und am Ende
Application.ScreenUpdating = True
Nicht die Verarbeitung ist langsam, sondern die Anzeige. Durch das temporär Ausschalten der Anzeigeaktualisierung wird nur einmal aktualisiert.
Viel Erfolg
Yal
Anzeige
AW: langsamer Code
17.12.2020 18:25:34
Pia
Hallo Yal,
vielen Dank für Deine Antwort. Onur hat meinen Fehler sofort gesehen. Und ich habe eine Stunde lang gesucht. Manchmal sieht man das Offensichtliche nicht...
Danke nochmal, ist ein tolles Forum hier!
lg
Pia

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige