답변1
첨부된 스크린샷을 바탕으로 두 개의 VBA 매크로가 있고 두 개의 열을 비교하고 일치하지 않는 값을 다른 시트에 복사하려고 한다는 것을 발견했습니다.
이를 위해서는 두 개의 매크로를 하나로 결합하는 방법이 필요합니다.
방법을 제안하고 싶습니다. 원본 시트의 두 열을 비교하여 일치하지 않는 값을 찾고 데이터를 다른 시트에 복사하는 것입니다.
매크로는 행에 색상 형식을 적용하고 복사 후 두 열의 형식을 반대로 바꿉니다.
Sub HighlightColumnDifferences()
Dim bothcolumns As Range, i As Integer
Set bothcolumns = Selection
With bothcolumns
For i = 1 To .Rows.Count
If Not StrComp(.Cells(i, 1), .Cells(i, 2), vbBinaryCompare) = 0 Then
Range(.Cells(i, 1), .Cells(i, 2)).Interior.ColorIndex = 6
End If
Next i
End With
Call Copy
Application.CutCopyMode = False
End Sub
Sub Copy()
Dim i As Long
For i = 1 To 10
If Sheets("Sheet1").Range("A" & i).Interior.ColorIndex = xlNone Then
Range("A" & i).Copy Destination:=Sheets("Sheet2").Range("A" & Rows.Count).End(xlUp).Offset(1)
End If
If Sheets("Sheet1").Range("B" & i).Interior.ColorIndex = xlNone Then
Range("B" & i).Copy Destination:=Sheets("Sheet2").Range("B" & Rows.Count).End(xlUp).Offset(1)
End If
Next i
Worksheets("Sheet1").Activate
Range("A1:B10").ClearFormats
Application.CutCopyMode = False
End Sub
작동 방식:
- 복사&반죽두 코드 모두 표준 모듈로 사용됩니다.
Sheet 1
비교하려는 두 열의 데이터를 선택합니다 .- 달리다
HighlightColumnDifferences
매크로.
주의
- A와 B만 선택하는 것이 아니라 비교할 두 개의 열을 선택할 수 있습니다.
- 두 번째 매크로에서 ,
For i = 1 To 10
데이터Sheet Name
범위 의 값을 조정할 수 있습니다 .A1:B10