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

Code optimieren (Copy&Paste)

Code optimieren (Copy&Paste)
Martin
Hallo,
ich versuche gerade meinen mit dem Makrorecorder aufgezeichneten Code zu verbessern. Daher die Frage ob Ihr noch n Tipp hättet das ganze noch weiter zu kürzen. Ich hab' schon einiges ausprobiert, aber es klappt's nicht so recht.

Import.Range("C4").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Ausgabe.Range("B4").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, _
Transpose:=False
Gibt's da noch n Kniff für den Copybereich, oder ist dies schon die beste Lösung?
Würde mich über einen Tipp freuen :-)
LG,
Martin

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

Betreff
Benutzer
Anzeige
AW: Code optimieren (Copy&Paste)
26.03.2012 12:50:50
JoWE
Hallo Martin,
ohne das völlig überflüssige select geht's vllt. so:
Sub copy()
Dim shI, shA As Worksheet
Set shI = Sheets("Import")
Set shA = Sheets("Ausgabe")
shI.Range("C4:C" & shI.Range("C4").End(xlDown).Row).copy
shA.Range("B4").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub

Wenn ich die Vraiablendeklaration, die Aufhebung der Markierung wegließe und die Verwendung der Worksheetnamen statt der VAriablen setzte wär's immer noch kürzer!?
Gruß
kleine Änderung
26.03.2012 13:12:10
Erich
Hi JoWE,
deine Deklaration ist verbesserungsfähig. Mit "Dim shI, shA As Worksheet"
deklarierst du shI nicht als Worksheet, sondern als Variant.
Ich meine:
Dim shI As Worksheet, shA As Worksheet
Aber sind diese Variablen überhaupt nötig? Vielleicht sind ja Import uns Ausgabe bereits Objektvariablen,
oder es sind Codenamen der Tabellenblätter - was auch ok wäre.
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich
Anzeige
AW: kleine Änderung
26.03.2012 13:40:08
Martin
Hallo,
vielen Dank euch beiden. Genau das habe ich gesucht! Klasse! Auf die Variablen habe ich allerdings verzichtet, weil Import/Ausgabe die Namen der Tabellenblätter sind.
Mein Code jetzt:

Import.Range("C4:C" & Import.Range("C4").End(xlDown).Row).copy
Ausgabe.Range("B4").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False,  _
Transpose:=False
Import.Range("B4:B" & Import.Range("B4").End(xlDown).Row).copy
Ausgabe.Range("C4").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False,  _
Transpose:=False
usw
Matrin
Anzeige
AW: Jau!! Ich nicke ergebenst! oT
26.03.2012 14:17:55
JoWE

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige