Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Referenziert Kopieren nur Werte

Referenziert Kopieren nur Werte
Michael
Hallo zusammen,
ich möchte Werte von einem Blatt in ein anderes, ausgeblendetes Blatt kopieren.
dazu folgender Code
Sub Kopieren()
Dim rngQuelle As Range, rngZiel As Range
Set rngQuelle = Worksheets("Eingabe").Range("A4")
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Set rngZiel = Worksheets("Kopie").Range("A1")
rngQuelle.Copy rngZiel
End Sub

Wie bekomme ich es hin, dass im Quellblatt nur der belegte Bereich ausgewählt und selektiert wird.
.Current Region geht nicht, da im Quellblatt Formeln bis in die letzte Zeile drinstehen.
Kopiert werden sollen nur Wert und Zahlenformate
Vielen Dank für Eure Hilfe
Micha

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
UsedRange owT
02.03.2011 08:49:47
Matthias
AW: UsedRange owT
02.03.2011 09:56:49
Michael
Hallo Matthias,
Danke, guter Tip. Allerdings komme ich auch nicht so richtig weiter.
die Hilfe sagt:
Worksheets("Sheet1").Activate
ActiveSheet.UsedRange.Select
daraus mache ich
Sub Kopieren()
Dim rngQuelle As Range, rngZiel As Range
Set rngQuelle = Worksheets("Eingabe").UsedRange.Select '
Und dann habe ich noch das Problem mit dem Kopieren, so dass nur werte kopiert werden
Vielen Dank
Micha
UsedRange ohne Select ...
02.03.2011 10:36:40
Matthias
Hallo
Sub Kopieren()
Dim rngQuelle As Range, rngZiel As Range
Set rngQuelle = Worksheets("Eingabe").UsedRange
Set rngZiel = Worksheets("Kopie").Range("A1")
rngQuelle.Copy
rngZiel.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
End Sub
Gruß Matthias
Anzeige
AW: UsedRange ohne Select ...
02.03.2011 11:31:52
Michael
Hallo Matthias,
vielen Dank, aber UsedRange kopiert immer alles (von A1 beginnend) aus dem Quellblatt ins Zielblatt.
Ich benötige erst die Werte ab A4.
Weiterhin habe ich im Blatt "Eingabe" nur Werte bis Zeile 165 stehen. Die Formeln gehen im Eingabeblatt aber bis ans Blattende.
Über UsedRange und Names.Add wird im neien Bereich aber immer der komplette Bereich bis zur letzten Zeile in die Namensdeklaration übernommen. Ich möcht aber den Namen nur bis zur letzten ausgefüllten Zeile (165 haben)
Hier mein vollständiger Code:
Sub Aktualisieren()
Dim rngQuelle As Range, rngZiel As Range
Set rngQuelle = Worksheets("Eingabe").UsedRange
Set rngZiel = Worksheets("Kopie").Range("A1")
rngQuelle.Copy
rngZiel.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Sheets("Kopie").Activate
' Bereichsnamen löschen
ActiveWorkbook.Names("Import2").Delete
' Bereich neu definieren
ActiveWorkbook.Names.Add Name:="Import2", RefersToR1C1:=Range("A4").CurrentRegion
Sheets("Auswertung").Activate
ActiveSheet.PivotTables("PivotTable1").PivotCache.Refresh
End Sub
hoffe hab mich verständlich ausgedrückt.
Micha
Anzeige
hab jetzt leider keine Zeit mehr kwT
02.03.2011 11:38:18
Matthias
UsedRange usw.
02.03.2011 17:47:04
Erich
Hi Michael,
"habe ich im Blatt "Eingabe" nur Werte bis Zeile 165 stehen. Die Formeln gehen im Eingabeblatt aber bis ans Blattende"
stimmt nicht wirklich.
In welchem Bereich stehen die Formeln (genau bitte)?
Das könnte z. B. der Bereich A4:K65536 sein (Formeln ab Zeile 4 bis zur letzten Zeile).
Der benutzte Bereich (=UsedRange) und die CurrentRegion umfassen mindestens diesen Bereich,
denn durch das Reinschreiben einer Formel wird eine Zelle ja benutzt.
Um welche Spalten geht es eigentlich? Das kam bislang wohl noch nicht vor - außer A natürlich.
Jede Formel hat einen Wert. Das kann auch mal ein Fehlerwert sein. Oder der Wert "".
Die beiden Formeln
=WENN(1=1;"";"nie") hat den Wert ""
=WENN(1=1;"ja";"nie") hat den Wert "ja"
Ob da nun "" oder "ja" rauskommt - Werte sind das beide.
Nun stellt sich die Frage, welcher Bereich kopiert werden soll. Der Start ist klar: A4.
Welches solll die letzte kopierte Zeile sein?
Die letzte Zeile, in der in Spalte A etwas steht, was ungleich "" ist?
oder
Die letzte Zeile, in der in irgend einer Spalte etwas steht, was ungleich "" ist?
Erst wenn die Aufgabe klar ist, sollte man mit der VBA-Umsetzung anfangen.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige