첫 번째 열 값을 기준으로 "마스터"워크 시트와 "새"워크 시트를 비교하고 싶습니다. "New"워크 시트에서 같은 것을 사용할 수 있으면 "Master"워크 시트의 일치하는 행의 "E"열과 "New"워크 시트의 일치하는 행의 "E"열을 비교하려고합니다. 값에 diffenrence가있는 경우 "master"의 열 값 "E"를 "New"의 열 값 "E"로 바꾸고 전체 행을 색상으로 강조 표시합니다. "비교하고 vba 매크로의 열 값을 바꿉니다
시트 경우 :
Sub CompareValues()
Dim sh1 As Worksheet, sh2 As Worksheet, sh3 As Worksheet, lr As Long, rng As Range, c As Range
Set sh1 = Sheets("New")
Set sh2 = Sheets("Master")
lr = sh2.Cells(Rows.Count, 1).End(xlUp).Row 'Get last row with data in Column A on Sheet 1.
Set rng = sh2.Range("A2:A" & lr) 'Set compare range to a variable
For Each c In rng 'Make cell by cell comparison
If Application.CountIf(sh1.Range("A:A"), c.Value) <> 0 Then
If c.EntireRow.Range("E") <> sh1.Range("E", c.Value) Then
' to fill the value into another sheet simply replace from sh1 to c.Range
c.Range("E" & i).Copy (sh1.Range("E" & i))
Range(c, sh2.Cells(c.Row, Columns.Count).End(xlToLeft)).Interior.ColorIndex = 4
End If
End If
Next
End Sub
안녕하세요. marcw, 죄송합니다. 귀하의 의견을 보내 주셔서 감사합니다. 귀하의 솔루션을 시도하고 그것은 마스터 시트의 첫 번째 열의 데이터가 새로운 시트의 동일한 행 번호의 데이터와 일치하면 잘 작동합니다. 그러나 나는 그것을 새로운 시트에서 찾아서 그것을 마스터 시트에서 업데이트해야합니다. – user1907867