엑셀에서 특정 값을 1번 시트에서 추출하여 2번 시트로 옮기는 작업은 VBA 매크로를 사용하여 자동화할 수 있습니다. 아래는 특정 조건을 만족하는 데이터를 1번 시트에서 찾아서 2번 시트로 복사하는 VBA 코드 예제입니다. 이 예제에서는 특정 값을 '값' 변수로 설정하고, 이 값에 해당하는 데이터를 찾아 복사합니다.
vbaSub CopySpecificValues()
Dim wsSource As Worksheet
Dim wsTarget As Worksheet D
im lastRow As Long
Dim matchValue As String
Dim i As Long
Dim targetRow As Long
' 워크시트 설정
Set wsSource = ThisWorkbook.Sheets(1) ' 1번 시트
Set wsTarget = ThisWorkbook.Sheets(2) ' 2번 시트
' 찾고자 하는 특정값 설정
matchValue = "특정값" ' 찾고 싶은 값으로 변경하세요
' 1번 시트의 마지막 행 찾기 lastRow = wsSource.Cells(wsSource.Rows.Count, 1).End(xlUp).Row
' 2번 시트의 다음 입력할 행 찾기 targetRow = wsTarget.Cells(wsTarget.Rows.Count, 1).End(xlUp).Row + 1
' 1번 시트에서 특정값 찾아서 2번 시트로 복사
For i = 1 To lastRow
If wsSource.Cells(i, 1).Value = matchValue Then
wsSource.Rows(i).Copy Destination:=wsTarget.Rows(targetRow)
targetRow = targetRow + 1
End If
Next i
End Sub
위 코드의 주요 포인트는 다음과 같습니다:
- 워크시트 설정:
wsSource
와wsTarget
변수를 사용하여 각각 1번 시트와 2번 시트를 설정합니다. - 찾고자 하는 값 설정:
matchValue
변수에 찾고자 하는 특정 값을 설정합니다. 이 값이 1번 시트에서 찾아질 경우, 해당 행이 2번 시트로 복사됩니다. - 데이터 복사:
For
루프를 사용하여 1번 시트의 모든 행을 순회하며, 조건에 맞는 행을 찾아 2번 시트에 복사합니다.
이 코드를 Excel VBA 에디터에 입력하고 실행하면, 설정한 '특정값'을 가진 모든 행이 1번 시트에서 2번 시트로 복사됩니다. 필요에 따라 matchValue
값을 조정하거나 복사할 열 범위를 조정하여 사용하세요.