Excel like a finance pro.
VBA · Ranges
Copy and PasteSpecial
Copies a range and pastes values, formats, or formulas.
When to use it
Copy puts a range on the clipboard and PasteSpecial pastes values, formats, or formulas. Reset CutCopyMode afterwards to drop the marching ants.
The code
- Code
Range("A1:B10").Copy Range("D1").PasteSpecial Paste:=xlPasteValues Application.CutCopyMode = False
Worked examples
Paste values
Range("A1:B10").Copy Range("D1").PasteSpecial Paste:=xlPasteValues Application.CutCopyMode = False → Values pasted at D1
The clean pattern.
Direct copy
Range("A1:B10").Copy Destination:=Range("D1") → Copy everything in one line, no clipboard mode
Simplest full copy.
Paste formats
rng.Copy rng.PasteSpecial xlPasteFormats Application.CutCopyMode = False → Formats only
Copy styling.
Worth knowing
- Assign .Value = .Value directly when you only need values; it is faster than the clipboard.
- PasteSpecial Transpose:=True flips.
- Copy across workbooks works the same way.
Where it goes wrong
- Clipboard use fails when another app locks the clipboard.
- Forgetting CutCopyMode = False leaves the border and can paste later by accident.
Related
Learn the moves here — or let Wauvel run them on your numbers.
Meet your AI CFO →One CFO-grade Excel tip a week
A short, practical email for finance operators — functions, shortcuts, and the moves that save an afternoon. Free, unsubscribe anytime.