필자는 마스터 시트 ("Perk")를 가지고 있고 A 열의 "y"를 모두 "등록"시트에 복사하고 모두 "y" B 열에서 "Housing"시트로 이동하십시오. 현재 코드를 사용하면 올바른 정보가 등록 시트에 복사됩니다. 주거 시트는 첫 번째 레코드 만 당기고 있습니다.다른 열을 기반으로 한 워크 시트의 행을 다른 시트로 복사
Sub extractdata()
Dim x As Long, lastrow
lastrow = Sheets("Perk").Range("A" & Rows.Count).End(xlUp).Row
Sheets("Housing").Range("A2:AW500").ClearContents
Sheets("Registration").Range("A2:AW500").ClearContents
For x = 2 To lastrow
If Worksheets("Perk").Cells(x, 1) Like "y*" Or Worksheets("Perk").Cells(x, 1) Like "Y*" Then
Worksheets("Perk").Cells(x, "A").EntireRow.Copy Destination:=Sheets("Registration").Range("A" & Rows.Count).End(xlUp).Offset(1)
End If
If Worksheets("Perk").Cells(x, 2) Like "y*" Or Worksheets("Perk").Cells(x, 2) Like "Y*" Then
Worksheets("Perk").Cells(x, "B").EntireRow.Copy Destination:=Sheets("Housing").Range("B" & Rows.Count).End(xlUp).Offset(1, -1)
End If
Next x
End Sub
작동합니다 그리고 B 열은 주택에 갈 것입니다. A가 있는지 여부에 관계없이 주택으로 이동하려면 ElseIF가 아닌 두 개의 별개의 if로 분할해야합니다. –
감사합니다! 나는 갱신을했다. Column A와 Column B에 y가있는 경우 행만 Housing으로 복사됩니다. 또는 Column B에 y가있는 행이 여러 개있는 경우 마지막 행만 Housing으로 복사됩니다. 등록은 올바르게 복사됩니다. – Faith
질문에있는 코드가 정확히 무엇을 반영하고 있습니까? 문제의 한 가지를 말하고있는 것 같습니다 ("현재 코드를 사용하면 올바른 정보가 등록 시트에 복사됩니다. 주거 시트는 첫 번째 레코드 만 가져오고 있습니다."), 마지막 코멘트 ("이제 행 A 열과 B 열에 y가있는 경우 또는 B 열에 y가있는 행이 여러 개있는 경우 마지막 행만 하우징에 복사됩니다. ")는 모순 된 것처럼 보입니다. – YowE3K