2012-06-13 4 views
1

나는 한동안로드 블록을 치려고 노력했습니다.Excel 두 열을 비교하여 일치하는 행을 새 시트에 복사하십시오.

는 I 데이터 5 열이 엑셀 시트있다 : A, I는 어떤 데이터가 다른 칼럼 F가 B, C, D & E.

.

내가 원하는 것은 수식이나 매크로로 B 열의 F 열에서 모든 값을 찾아서 전체 행 (A, B, C, D & E) 만 새 시트로 복사 할 수 있습니다. 다른 모든 값을 삭제하십시오).

수식을 작성하고 오류 행을 제거하려고 시도했지만 데이터가 엉망입니다.

아이디어가 있으십니까?

+2

제공하십시오. 더 명확하게하기위한 예제. –

답변

0

난 당신이

는 B

A  B  C 
Row 1 Value 1 Value 3 
Row 2 Value 2 Value 5 
Row 3 Value 3 Value 8 
Row 4 Value 4 Value 3 
Row 5 Value 5 Value 5 
Row 6 Value 6 Value 8 
Row 7 Value 7 Value 3 
Row 8 Value 8 Value 5 
Row 9 Value 9 Value 8 

와 열 C를 비교하여 다음과 같은 데이터를 가지고 다음 코드

Sub Macro1() 

    Dim Counter As Long 

    Dim lastRow As Long 
    lastRow = 10 
    Dim arrColF(10) As String 

    Sheets("Sheet1").Select 

    For Counter = 1 To lastRow Step 1 
     arrColF(Counter - 1) = Sheet1.Cells(Counter, 3).Value 
    Next Counter 

    arrStr = Join(arrColF, ", ") 
    Dim strRange As String 

    For Counter = 1 To lastRow Step 1 
     If InStr(1, arrStr, Sheet1.Cells(Counter, 2).Value & ", ") > 0 Then 
      strRange = strRange & "A" & Counter & ":B" & Counter 
      If Trim(strRange) <> "" Then strRange = strRange & "," 
     End If 
    Next Counter 
    strRange = Left(strRange, Len(strRange) - 1) 

    Sheet1.Range(strRange).Select 
    Selection.Copy 
    Sheets("Sheet2").Select 
    Range("A1").Select 
    ActiveSheet.Paste 

End Sub 
을 시도

A  B 
Row 3 Value 3 
Row 5 Value 5 
Row 8 Value 8 

시트 2 발생할 싶어 알아 보았로

+0

위의 코드를 사용해 보셨습니까? –

관련 문제