VBA: Zellen als Wert kopieren

Bereiche kopieren und per VBA als Wert
(nicht Formel) einfügen

Im Normalfall wird beim kopieren eine echte Kopie der Zelle in den Zielbereich einfügen, also mit einer eventuell dort stehenden Funktion. Beispiel:

Sub KopierenMitAllem()
   Range("A3").Copy Range("C1")
   'Alternative
   'Range("A3").Copy Destination:=Range("C3")
End Sub

Im günstigsten Fall wird die (angepasste) Formel in C3 eingefügt, im weniger günstigen Fall führt das zu einer Fehlermeldung (beispielsweise #BEZUG!). Soll nur das in der Quell-Zelle stehende Ergebnis kopiert werden, dann geht das so, wenn das Ziel im gleichen Blatt ist:

Sub KopierenAlsWert_1()
   Range("A3").Copy 
   Range("C3").PasteSpecial xlPasteValues
End Sub

Falls das Ziel in einem anderen Tabellenblatt liegt, könnte sich das so gestalten:

Sub KopierenAlsWert_2()
   Sheets("Tabelle1").Range("A3").Copy
   Sheets("Tabelle2").Range("C3").PasteSpecial xlPasteValues
End Sub
[NachObenLetzte Verweis=”CS: Bereiche als Wert per VBA”]
Dieser Beitrag wurde unter Code-Schnipsel, Tabelle und Zelle abgelegt und mit , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.