-
두 개의 엑셀 Sheet를 간단하게 비교하는 방법Exel 2024. 6. 20. 17:28반응형
엑셀 매크로를 이용하여 같은 파일에 있는 두 개의 Sheet를 간단하게 비교하는 방법을 알아보겠습니다.
엑셀 매크로를 사용하는 방법은 이전 글을 참고하시기 바랍니다.
CODE
다음은 같은 파일에 있는 두 개의 Sheet를 비교하는 매크로 코드입니다. 이 코드는 두 Sheet를 비교하여 차이점을 찾아내고, 차이가 있는 셀을 빨간색으로 표시합니다.
Sub CompareSheets()
Dim ws1 As Worksheet, ws2 As Worksheet
Dim cell1 As Range, cell2 As Range
Dim diffCount As Integer
Set ws1 = ThisWorkbook.Sheets("Sheet1")
Set ws2 = ThisWorkbook.Sheets("Sheet2")
diffCount = 0
For Each cell1 In ws1.UsedRange
Set cell2 = ws2.Cells(cell1.Row, cell1.Column)
If cell1.Value <> cell2.Value Then
cell1.Interior.Color = RGB(255, 0, 0)
cell2.Interior.Color = RGB(255, 0, 0)
diffCount = diffCount + 1
End If
Next cell1
If diffCount = 0 Then
MsgBox "두 시트는 완전히 동일합니다."
Else
MsgBox "두 시트 사이에 " & diffCount & "개의 차이점이 있습니다."
End If
End Sub코드의 첫 번째 행인 'CompareSheets'는 매크로의 이름입니다. 이 이름을 변경하면 매크로 선택 창에서도 다른 이름으로 표시됩니다.
다음의 'Set ws1 = ThisWorkbook.Sheets("Sheet1")과 'Set ws2 = ThisWorkbook.Sheets("Sheet2")는 비교할 Sheet를 선택하는 코드입니다. "Sheet1"과 "Sheet2"를 실제 비교하려는 Sheet의 이름으로 변경해야 합니다.
'RGB(255, 0, 0) 부분은 셀의 값이 다를 경우 표시할 색을 나타냅니다. (255, 0, 0)은 빨간색을 의미하며, 파란색은 (0, 0, 255), 노란색은 (255, 255, 0), 녹색은 (0, 255, 0), 검은색은 (0, 0, 0)으로 설정할 수 있습니다.
마지막 부분의 'MsgBox'는 팝업 되는 메시지를 설정하는 곳입니다. 큰따옴표 안에 입력한 내용이 그대로 출력됩니다.
Compare
완전히 동일한 두 개의 Sheet를 비교해 보겠습니다.
매크로를 실행하면 팝업 창이 뜨면서 두 Sheet가 완전히 동일하다는 메시지를 알려줍니다. 완전히 같은 Sheet에서는 코드가 잘 작동합니다.
이번에는 Sheet1의 데이터를 몇 개 바꾸고 비교해 보겠습니다.
매크로를 다시 실행하면, 두 시트 간의 차이점을 찾아내고 차이가 있는 셀을 빨간색으로 표시합니다. 또한, 팝업 창을 통해 몇 개의 차이점이 있는지 알려줍니다.
Finally
매크로를 사용하는 것은 다른 조건부 서식을 사용하는 것보다 편리하고 빠릅니다. 또한, 이 매크로는 두 Sheet 중 다른 부분이 있으면 두 Sheet 모두에 표시를 해주기 때문에 차이점을 쉽게 확인할 수 있습니다. 이 방법을 사용하면 셀의 값만 비교하므로 서식이 다르더라도 비교가 가능하다는 장점이 있습니다. 엑셀 Sheet를 비교해야 할 일이 있다면 한번 사용해 보시기 바랍니다.
반응형'Exel' 카테고리의 다른 글
엑셀 매크로 사용 방법 (0) 2024.06.20