Anzeige
Archiv - Navigation
1484to1488
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

Beschleunigen und Datum einsetzen

Beschleunigen und Datum einsetzen
03.04.2016 09:27:44
Andre
Hallo
Ich habe folgenden Code der auch soweit läuft nur das er ewig braucht bis er die 1500 Datensätze durchlaufen hat
Wie kann ich diesen Code beschleunigen?
und in Spalte B im Grundbuch soll automatisch das Datum vor den eingefügten Zeilen stehen
vielen Dank im voraus
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Dim myRow As Long
Dim myLastRow1 As Long
Dim myLastRow2 As Long
With Sheets("Hilfstabelle")
myLastRow1 = .Cells(Rows.Count, 4).End(xlUp).Row
If myLastRow1 = 1 Then
MsgBox "Keine Daten vorhanden."
Exit Sub
End If
End With
For myRow = 4 To myLastRow1
If Sheets("Hilfstabelle").Cells(myRow, 4).Value > 0 Then
With Sheets("Grundbuch")
myLastRow2 = .Cells(Rows.Count, 3).End(xlUp).Row
If myLastRow2 

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Beschleunigen und Datum einsetzen
03.04.2016 13:07:00
Werner
Hallo Andre,
sieht für mich so aus, als könnte man dein Tabellenblatt("Hilfsspalte") Spalte D nach Größe absteigend sortieren. Dann stehen alle Datensätze die kopiert werden müssen oben. Jetzt kann man die kopletten Datensätze mit größer 0 auf einen Rutsch ins Blatt Grundbuch kopieren. Das ist deutlich schneller als alle Zeilen einzeln abzuklappern und zu kopieren.
Lade mal eine Datei mit entsprechenden Daten hier hoch, dann schau ich es mir morgen nachmittag mal an.
Datum in Spalte B bei deinem derzeitigen Code:
Sheets("Grundbuch").Cells(myLastRow2 + 1, 3).PasteSpecial Paste:=xlValues
Sheets("Grundbuch").Cells(myLastRow2 + 1, 2) = Date
Gruß Werner

Anzeige
AW: Beschleunigen und Datum einsetzen
03.04.2016 18:27:23
Andre
Hallo Werner
herzlichen Dank erstmal
Ich habe mal die Datei hochgeladen hoffe Du kannst mir dabei helfen
vielen dank schon mal im vorraus
https://www.herber.de/bbs/user/104740.xlsm

AW: mti Filter und Datum einsetzen
04.04.2016 07:17:46
hary
Moin Andre
Nimm den Filter.
Dim i As Long, myLastRow2 As Long
Dim wksQ As Worksheet, wksZ As Worksheet
Set wksQ = Worksheets("Hilfstabelle")
Set wksZ = Worksheets("Grundbuch")
With wksQ.Range("A1").CurrentRegion
.AutoFilter Field:=4, Criteria1:=">0"
i = Intersect(.SpecialCells(xlVisible), .Columns(1)).Count - 1
If i > 0 Then
Application.ScreenUpdating = False
myLastRow2 = Application.Max(4, wksZ.Cells(Rows.Count, 3).End(xlUp).Row + 1)
.Range("A2:F" & .Cells(Rows.Count, 3).End(xlUp).Row).SpecialCells(xlVisible).Copy
wksZ.Range("C" & myLastRow2).PasteSpecial Paste:=xlValue
wksZ.Range("B" & myLastRow2).Resize(wksZ.Cells(Rows.Count, 3).End(xlUp).Row -  _
myLastRow2 + 1, 1) = Date
End If
Application.CutCopyMode = False
.AutoFilter
End With
Application.ScreenUpdating = True
Set wksQ = Nothing
Set wksZ = Nothing

gruss hary

Anzeige
AW: mti Filter und Datum einsetzen
04.04.2016 19:03:49
Andre
Supi vielen Danke hary
läuft so wie ich es mir vorgestellt habe
Besten Dank nochmal für Eure Hilfe

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige