Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Copying over Rows Once
The code below compares two worksheets which both have 10 columns,
if there are any differences the entire row is copied and pasted to a separate Worksheet "Changes". My problem is that if in any row there is e.g 3 changes, the same row is copied over three times, obviously I want the row to be copied over only once, how do I adjust this code to do this. Help is greatly appreciated k = 6 For i = 1 To 20 For j = 1 To 10 If Worksheets("Jobs").Cells(i, j) < Worksheets("Jobs").Cells(i, j) Then Worksheets("Jobs").Cells(i, j).EntireRow.Copy Destination:=Worksheets("Changes").Cells(k, 1) k = k + 1 End If Next j Next i |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Copying over Rows Once
One way:
k = 6 For i = 1 To 20 For j = 1 To 10 If Worksheets("Jobs1").Cells(i, j) < _ Worksheets("Jobs2").Cells(i, j) Then Worksheets("Jobs1").Cells(i, j).EntireRow.Copy _ Destination:=Worksheets("Changes").Cells(k, 1) k = k + 1 Exit For End If Next j Next i In article , teresa wrote: The code below compares two worksheets which both have 10 columns, if there are any differences the entire row is copied and pasted to a separate Worksheet "Changes". My problem is that if in any row there is e.g 3 changes, the same row is copied over three times, obviously I want the row to be copied over only once, how do I adjust this code to do this. Help is greatly appreciated k = 6 For i = 1 To 20 For j = 1 To 10 If Worksheets("Jobs").Cells(i, j) < Worksheets("Jobs").Cells(i, j) Then Worksheets("Jobs").Cells(i, j).EntireRow.Copy Destination:=Worksheets("Changes").Cells(k, 1) k = k + 1 End If Next j Next i |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Copying over Rows Once
First it looks like you are comparing the same cell to itself
{Worksheets("Jobs").Cells(i, j)}. Probably a typo. Check the destination sheet to see if it already has that value in it... k = 6 For i = 1 To 20 For j = 1 To 10 If Worksheets("Jobs").Cells(i, j) < _ Worksheets("Jobs").Cells(i, j) And Worksheets("Jobs").Cells(i, j) < _ Worksheets("Changes").Cells(k, 1) Then Worksheets("Jobs").Cells(i, j).EntireRow.Copy _ Destination:=Worksheets("Changes").Cells(k, 1) k = k + 1 End If Next j Next i Mike F "teresa" wrote in message ... The code below compares two worksheets which both have 10 columns, if there are any differences the entire row is copied and pasted to a separate Worksheet "Changes". My problem is that if in any row there is e.g 3 changes, the same row is copied over three times, obviously I want the row to be copied over only once, how do I adjust this code to do this. Help is greatly appreciated k = 6 For i = 1 To 20 For j = 1 To 10 If Worksheets("Jobs").Cells(i, j) < Worksheets("Jobs").Cells(i, j) Then Worksheets("Jobs").Cells(i, j).EntireRow.Copy Destination:=Worksheets("Changes").Cells(k, 1) k = k + 1 End If Next j Next i |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Copying & Inserting Rows w/o Affecting other Rows Etc. | Excel Worksheet Functions | |||
Copying multiple rows to other worksheets (but amount of rows varies) - How? | Excel Discussion (Misc queries) | |||
Copying Rows when hiding other rows | Excel Worksheet Functions | |||
copying rows | Excel Programming | |||
copying rows | Excel Programming |