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

vba: autogefilterte Daten schrittweise kopieren

vba: autogefilterte Daten schrittweise kopieren
07.07.2015 09:50:51
Bernhard
Hallo,
folgendes Code Schnipsel kopiert mir zwar -wie gewollt- schrittweise und zeitverzögert, aber leider sämtliche (und nicht nur die autogefilterten) Daten in das Filterergebnis sheet ("gefiltert"):
With Worksheets("kurse")
.Range(.Cells(i, 2), .Cells(i, 5)).Copy Worksheets("gefiltert").Cells(i - 21, 2)
End With
'Warten
Call Sleep(500) '0,5 Sekunden
Next i
Der Autofilter ist im Ausgangs sheet "kurse" gesetzt, und nur die Gefilterten soll er kopieren und einfügen.
Habe schon mit specialcells experimentiert, aber das funzt leider nicht...
Weiss jemand Bescheid?
Besten Dank und Grüsse,
Bernhard

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: vba: autogefilterte Daten schrittweise kopieren
07.07.2015 10:05:35
ransi
Hallo,
With Worksheets("kurse")
if .rows(i).height>0 then
.Range(.Cells(i, 2), .Cells(i, 5)).Copy Worksheets("gefiltert").Cells(i - 21, 2)
end if
End With
sollte klappen.
Warum die Zeitverzögerung ?
ransi

AW: vba: autogefilterte Daten schrittweise kopieren
07.07.2015 14:36:11
Bernhard
Hallo ransi,
damit kopiert er nur die Kopfzeile rein. Dann kommt der Warte-Mauszeiger, und mit strg Pause ist das vba nicht zu stoppen, sondern ich muss Excel abschiessen....
Die Zeitverzögerung deshalb, weil die gefilterten Daten eine Datenreihe für eine Grafik darstellen, die sich langsam aufbauen soll. Ich will also sehen, wie Excel die Kurve zeichnet....
Hier nochmal das gesamte alte vba:
Public Declare Sub Sleep Lib "kernel32.dll" (ByVal dwMilliseconds As Long)
Public Sub Kopieren_langsam()
Dim loLetzteZiel As Long
Dim loletzte As Long
loLetzteZiel = Worksheets("kurse").Cells(Rows.Count, 7).End(xlUp).Row 'letzte Zeile in Spalte G
With Worksheets("kurse")
.Range(.Cells(4, 7), .Cells(loLetzteZiel, 10)).ClearContents
End With
'Call Sleep(500)
loletzte = Worksheets("kurse").Cells(Rows.Count, 2).End(xlUp).Row  'letzt Zeile in Spalte B
For i = 25 To loletzte 'von Zeile 25 bis letzt Zeile
'Copy and Paste Makro
With Worksheets("kurse")
.Range(.Cells(i, 2), .Cells(i, 5)).Copy Worksheets("gefiltert").Cells(i - 21, 2)
End With
'Warten
Call Sleep(500) '0,5 Sekunden
Next i
End Sub

Anzeige

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige