Herbers Excel-Forum - das Archiv

zu langsam beim kopieren

Bild

Betrifft: zu langsam beim kopieren
von: Franz

Geschrieben am: 02.03.2005 09:44:26
Hallo,
ich hab schon wieder ein unbegreifliches Problem. Ich möchte aus einem Workbook verschiedene Zellenwerte in ein anderes offenes Workbook kopieren.
Es handelt sich dabei um ca 50 Werte, die kreuz und quer im Workbook stehen (man kann also nicht einfach ne ganze Spalte kopieren)
Wenn ich nun mein Makro laufen lasse, dauert es ca 1,5 Minuten, bis die Werte kopiert sind. Wenn ich jedoch beim Funktionsaufruf(die Funktion, welche die Daten kopiert) einen Haltepunkt setze und sobald er stoppt sofort auf F5 (Weiter) drücke, braucht das Makro nur 10 Sekunden. Das versteh ich nicht.
Es ist also schneller, wenn ich einen Haltepunkt setze.
Ich habs auch schon probiert mit:
Application.DisplayAlerts = False
Application.ScreenUpdating = False
hat aber auch nix gebracht.
Vielen Dank schon mal, bitte helft mir
Franz
Bild

Betrifft: AW: zu langsam beim kopieren
von: Uduuh
Geschrieben am: 02.03.2005 10:14:27
Hallo,
es wäre besser, wenn du die Mappe hochladen würdest, damit man sich den Code anschauen kann.
Gruß aus'm Pott
Udo

Bild

Betrifft: AW: zu langsam beim kopieren
von: Franz

Geschrieben am: 02.03.2005 11:24:26
Hallo,
hier ein kleiner Auszug aus meiner Funktion:
Function Daten_Kopieren(Dateiname1 As String, Dateiname2 As String)
'***** Makro nicht durch Sicherheitswarungen unterbrechen *****
Application.DisplayAlerts = False

'***** Makroausführung verbergen aus!!! *****
Application.ScreenUpdating = False

'***jetzt werden die Daten kopiert***

Workbooks(Dateiname1).Activate
Sheets("Sheet1").Select
Range("B5").Select
Selection.Copy
Workbooks(Dateiname2).Activate
Sheets("Sheet3").Select
Range("D8").Select
ActiveSheet.Paste
Workbooks(Dateiname1).Activate
Sheets("Sheet2").Select
Range("F7").Select
Selection.Copy
Workbooks(Dateiname2).Activate
Sheets("Sheet1").Select
Range("R2").Select
ActiveSheet.Paste
Bild

Betrifft: AW: zu langsam beim kopieren
von: Uduuh

Geschrieben am: 02.03.2005 13:30:35
Hallo,
das ganze Select und Activate ist überflüssig und verlangsamt nur den Code.
Sub test()
Application.ScreenUpdating = False
With Workbooks(Dateiname1)
.Sheets("Sheet1").Range("B5").Copy _
Destination:=Workbooks(Dateiname2).Sheets("Sheet3").Range("D8")
.Sheets("Sheet2").Range("F7").Copy _
Destination:=Workbooks(Dateiname2).Sheets("Sheet1").Range("R2")
End With
Application.ScreenUpdating = True
End Sub

Gruß aus'm Pott
Udo
Bild

Betrifft: AW: zu langsam beim kopieren
von: Herbert H.
Geschrieben am: 02.03.2005 10:14:42
hallo Franz,
kannst du das Makro sehen lassen...?
die Auto-Berechnung auf Manuell stellen könnte vielleicht noch was bringen...
Application.Calculation = xlCalculationManual
gruß Herbert
 Bild
Excel-Beispiele zum Thema "zu langsam beim kopieren"
Diagramm-Datenreihen blinken lassen und Linie langsam zeichnen Blätter in andere Arbeitsmappen kopieren
Module von Mappe zu Mappe kopieren Arbeitsblatt 40 mal kopieren
Schriftgröße beim Kopieren verdoppeln Beim Kopieren auch die Zeilenhöhe und Spaltenbreite übernehmen
Tabellencode nach Kopieren des Blattes löschen Arbeitsmappe blitzschnell kopieren
VBE-Namen der Blattmodule beim Kopieren festlegen Blattinhalt von einer zur anderen Arbeitsmappe kopieren