Guten Morgen,
ich möchte in 2 Tabellen in Spalte K die Werte ausfüllen lassen.
Beide Tabellen sind intelligente Tabellen A1-R2100, da das ausfüllen normalerweise für diese Datenmenge normal nur wenige sec dauert,habe ich zum Testen ein Timer eingebaut, leider dauert hier der Durchlauf fast 5min.
Daher meine Bitte kann mir jemand sagen wo hier der Fehler ist bzw. wie man das Makro anpassen muss um hier einen schnelleren Durchlauf zu erzielen.
Danke
Sub SpalteZeit()
Dim wsA As Worksheet, wsB As Worksheet
Dim lastRowA As Long, lastRowB As Long
Dim dieselValueA As String, dieselValueB As String
Dim i As Long
Dim startTime As Double, endTimeA As Double, endTimeB As Double
Set wsA = ThisWorkbook.Sheets("TabelleA")
Set wsB = ThisWorkbook.Sheets("TabelleB")
lastRowA = wsA.Cells(wsA.Rows.Count, "E").End(xlUp).Row
lastRowB = wsB.Cells(wsB.Rows.Count, "E").End(xlUp).Row
dieselValueA = InputBox("Wert für Spalte K:", "Tabelle A")
If dieselValueA = "" Then Exit Sub
dieselValueB = InputBox("Wert für Spalte K:", "Dieselfloater Tabelle B")
If dieselValueB = "" Then Exit Sub
startTime = Timer
For i = 2 To lastRowA
wsA.Cells(i, "K").Value = dieselValueA / 100
Next i
endTimeA = Timer
MsgBox "Tabelle A wurde erfolgreich ausgefüllt." & vbCrLf & _
"Laufzeit: " & Format(endTimeA - startTime, "0.00") & " Sekunden.", vbInformation, "Fertig - Tabelle A"
For i = 2 To lastRowB
wsB.Cells(i, "K").Value = dieselValueB / 100
Next i
endTimeB = Timer
MsgBox "Tabelle B wurde erfolgreich ausgefüllt." & vbCrLf & _
"Laufzeit: " & Format(endTimeB - endTimeA, "0.00") & " Sekunden.", vbInformation, "Fertig - Tabelle B"
End Sub
|