Reputation: 49
I have a workbook with 2 worksheets. sheet 1 is open and sheet 2 is closed cases
i am trying to copy the values from a user selected row and paste these into the next blank row on the closed sheet.
I have a VBA which does this but I think it can be reduced, but dont know how to do it.
My current code is as follows. DRow is a calculated calue and works fine, Irow is gotten from a message box and again works fine
Worksheets("Closed").Cells(DRow, 2).Value = Worksheets("Open").Cells(iRow, 2).Value
Worksheets("Closed").Cells(DRow, 3).Value = Worksheets("Open").Cells(iRow, 3).Value
Worksheets("Closed").Cells(DRow, 4).Value = Worksheets("Open").Cells(iRow, 4).Value
Worksheets("Closed").Cells(DRow, 5).Value = Worksheets("Open").Cells(iRow, 5).Value
Worksheets("Closed").Cells(DRow, 6).Value = Worksheets("Open").Cells(iRow, 6).Value
Worksheets("Closed").Cells(DRow, 7).Value = Worksheets("Open").Cells(iRow, 7).Value
Worksheets("Closed").Cells(DRow, 8).Value = Worksheets("Open").Cells(iRow, 8).Value
Worksheets("Closed").Cells(DRow, 9).Value = Worksheets("Open").Cells(iRow, 9).Value
Is there a way to condense this into one or two lines
Upvotes: 2
Views: 61
Reputation: 14547
Simply use .Resize
:
Worksheets("Closed").Cells(DRow, 2).Resize(1,7).Value = _
Worksheets("Open").Cells(iRow, 2).Resize(1,7).Value
Upvotes: 4