Want macro to select & copy cells from a different worksheet

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I have a spreadsheet with "Sheet 1" and "Sheet 2"
Both have some data
I want a command button on Sheet 1 with code that will copy & move some data
on Sheet 1 elsewhere on Sheet 1, then on Sheet 2 copy & move some other data
on Sheet 2 elsewhere on Sheet 2 then return active cell to Sheet 1
If I record a macro and run it it works perfectly
If I copy that code into the Command Button code it has an error when it
selects the data on Sheet 2
 
I should have - sorry
This stops with the Range("B4").Select line highlighted

Private Sub CommandButton1_Click()
'
' Macro1 Macro
' Macro recorded 27/02/2006 by Hughes
'

'

Sheets("Sheet2").Select
Range("B4").Select
Rows("1:3").Select
Selection.Copy
Range("A10").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Sheets("Sheet1").Select
Range("B4").Select
Rows("1:3").Select
Application.CutCopyMode = False
Selection.Copy
Range("A10").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Range("B5").Select
Application.CutCopyMode = False

End Sub

It stops in debug with the
 
try this idea. Modify to suit and repeat for the second sheet. The first
line are the DESTINATION rows and the second is the SOURCE rows. Notice that
they are the SAME SIZE. This can be done from anywhere in the workbook with
NO selections necessary or desirable.

Sub copyrowvalues()
Sheets("sheet1").Rows("18:20").Value = _
Sheets("sheet1").Rows("8:10").Value

Sheets("sheet2").Rows("18:20").Value = _
Sheets("sheet2").Rows("8:10").Value
End Sub
 
Oh, well done!!
Thank you very much!

Don Guillett said:
try this idea. Modify to suit and repeat for the second sheet. The first
line are the DESTINATION rows and the second is the SOURCE rows. Notice that
they are the SAME SIZE. This can be done from anywhere in the workbook with
NO selections necessary or desirable.

Sub copyrowvalues()
Sheets("sheet1").Rows("18:20").Value = _
Sheets("sheet1").Rows("8:10").Value

Sheets("sheet2").Rows("18:20").Value = _
Sheets("sheet2").Rows("8:10").Value
End Sub
 
Back
Top