Sub compareCopy()
Dim manualRows As Integer, onlineRows As Integer, destRows As Integer
Dim onlineAttendance As Integer, rowno As Integer
manualRows = Sheets("Manual").Cells(Rows.Count, 1).End(xlUp).Row
onlineRows = Sheets("Online").Cells(Rows.Count, 2).End(xlUp).Row
For rowno = 2 To manualRows
destRows = Sheets("Attend_Edit").Cells(Rows.Count, 1).End(xlUp).Row + 1
onlineAttendance = WorksheetFunction.VLookup(Sheets("Manual").Range("A" & rowno), Sheets("Online").Range("C:D"), 2, 0)
If Sheets("Manual").Range("C" & rowno) <> onlineAttendance Then
Sheets("Manual").Range("A" & rowno & ":" & "C" & rowno).Copy Sheets("Attend_Edit").Range("A" & destRows)
End If
Next
End Sub
Thank You very much.... I get exact result after removed link between "manual" & "Online " sheets. Once again Thank You for spending me your own timeHi,
Please use below code.
VBA Code:Sub compareCopy() Dim manualRows As Integer, onlineRows As Integer, destRows As Integer Dim onlineAttendance As Integer, rowno As Integer manualRows = Sheets("Manual").Cells(Rows.Count, 1).End(xlUp).Row onlineRows = Sheets("Online").Cells(Rows.Count, 2).End(xlUp).Row For rowno = 2 To manualRows destRows = Sheets("Attend_Edit").Cells(Rows.Count, 1).End(xlUp).Row + 1 onlineAttendance = WorksheetFunction.VLookup(Sheets("Manual").Range("A" & rowno), Sheets("Online").Range("C:D"), 2, 0) If Sheets("Manual").Range("C" & rowno) <> onlineAttendance Then Sheets("Manual").Range("A" & rowno & ":" & "C" & rowno).Copy Sheets("Attend_Edit").Range("A" & destRows) End If Next End Sub
Cell Formulas | ||
---|---|---|
Range | Formula | |
D2:D21 | D2 | =IF($C2>=1,"YES","NO") |
E2:E21 | E2 | =IF($C2>=2,"YES","NO") |
F2:F21 | F2 | =IF($C2>=3,"YES","NO") |
G2:G21 | G2 | =IF(AND($C2>3,$C2<4),"YES","NO") |
H2:H21 | H2 | =IF($C2>=4,"YES","NO") |
I2:I21 | I2 | =IF($C2>=5,"YES","NO") |
J2:J21 | J2 | =IF($C2>=6,"YES","NO") |
M2 | M2 | =LEFT(K2,10) |
N2 | N2 | =RIGHT(K2,6) |
K3:N21 | K3 | =K2 |
C22 | C22 | =SUM(C2:C21) |
Sub copyValues()
Sheets("Sheet1").Range("A1:B100").Copy
Sheets("Sheet2").Range("A1").PasteSpecial Paste:=xlPasteValues
End Sub
Sub compareCopy()
Dim manualRows As Integer, onlineRows As Integer, destRows As Integer
Dim onlineAttendance As Integer, rowno As Integer
manualRows = Sheets("Manual").Cells(Rows.Count, 1).End(xlUp).Row
onlineRows = Sheets("Online").Cells(Rows.Count, 2).End(xlUp).Row
For rowno = 2 To manualRows
destRows = Sheets("Attend_Edit").Cells(Rows.Count, 1).End(xlUp).Row + 1
onlineAttendance = WorksheetFunction.VLookup(Sheets("Manual").Range("A" & rowno), Sheets("Online").Range("C:D"), 2, 0)
If Sheets("Manual").Range("C" & rowno) <> onlineAttendance Then
Sheets("Manual").Range("A" & rowno & ":" & "C" & rowno).Copy Sheets("Attend_Edit").Range("A" & destRows)
End If
Next
End Sub