View Single Post
  #3   Report Post  
Posted to microsoft.public.excel.programming
GS[_2_] GS[_2_] is offline
external usenet poster
 
Posts: 3,514
Default first sip of working with range in vba excel

A better solution:

Sub CopyRange()
Dim wksSource As Worksheet, wksTarget As Worksheet

Set wksSource = Sheets("Sheet2")
Set wksTarget = Sheets("Sheet1")

With wksSource
.Range(.Cells(1, 2), .Cells(10, 2)).Copy _
Destination:=wksTarget.Cells(4, 1)
End With

'OR
Dim v As Variant
v = wksSource.Range(wksSource.Range(wksSource.Cells(1, 2),
wksSource.Cells(10, 2)).Address)
wksTarget.Range(wksTarget.Cells(4, 1).Address).Resize(UBound(v), 1) =
v
End Sub

All are single line statements so watch word-wrapping.

--
Garry

Free usenet access at http://www.eternal-september.org
ClassicVB Users Regroup! comp.lang.basic.visual.misc