Ich habe ein Excel-Benutzerformular, das ungefähr 15 Felder (Textfelder und Dropdown-Listen) enthält und die Daten in ein Blatt kopiert, wenn eine Schaltfläche gedrückt wird. es hat ca. 15 min Laufzeit und nach durch die nur Linien treten, die eine beachtliche Menge Zeit in Anspruch nahmen warenGibt es eine schnellere Alternative zu target.value = me.textbox.value?
With ws
.Unprotect Password:="password"
.Cells(iRow, 1).Value = Me.Textbox1.Value
.Cells(iRow, 1).Value = Me.time.Value
.Cells(iRow, 2).Value = Me.card.Value
.Cells(iRow, 1).Value = Me.nature.Value
.Cells(iRow, 2).Value = Me.ma.Value
.Cells(iRow, 1).Value = Me.mem1.Value
.Cells(iRow, 2).Value = Me.mem2.Value
.Cells(iRow, 3).Value = Me.mem3.Value
.Cells(iRow, 4).Value = Me.mem4.Value
.Cells(iRow, 5).Value = Me.mem5.Value
.Cells(iRow, 6).Value = Me.mem6.Value
.Cells(iRow, 7).Value = Me.mem7.Value
.Cells(iRow, 8).Value = Me.mem8.Value
.Cells(iRow, 9).Value = Me.mem9.Value
.Cells(iRow, 10).Value = Me.mem10.Value
.Protect Password:="password"
End With
jeder der Kopierlinien etwa 1 Minute dauerte zu laufen. Ich habe gelesen, dass die Verwendung von Value2 schneller ist, aber keinen spürbaren Unterschied macht.
Während dieser Zeit wird kein anderer Code ausgeführt und ich deaktiviere automatische Updates für die Funktionen in Zellen.
' Ich habe automatische Updates für die Funktionen in Zellen deaktiviert. - Meinst du, du hast den Berechnungsmodus auf manuell gestellt? – GSerg
Sie scheinen zunächst Zellen zu überschreiben. – Comintern
Haben Sie Arbeitsblatt/Arbeitsmappe Ereignisprozeduren aktiv? – h2so4