이 기사에서는 특정 조건에 따라 워크 시트의 변경 이벤트를 사용하여 한 시트에서 다른 시트로 데이터를 전송합니다.

원시 데이터는 이름, 주소, 도시, 지역, 국가 및 전화 번호를 포함하는 고객 세부 정보로 구성됩니다.

ArrowRawData

이 기사에서는 특정 제안을받을 자격이없는 고객의 데이터를 전송하려고합니다. 고객이 특정 오퍼를받을 자격이없는 경우 마지막 열에는 값으로 “Not”이 포함됩니다. 이러한 ‘적격하지 않은’고객을“NotEligibleData”시트에 복사하려고합니다.

ArrowTriggeringEvent

ArrowOutput

코드 설명

If Target.Column = 7 Then 위 코드는 7 ^ th ^ 열의 값이 변경 될 때만 실행되도록 워크 시트의 변경 이벤트를 제한하는 데 사용됩니다.

Sheets ( “NotEligibleData”). Range ( “A2 : I600”). ClearContents 위 코드는 A2 : I600 Sheets ( “Main”). Cells (i, “G”). EntireRow.Copy 범위에서 값을 삭제하는 데 사용됩니다. 대상 : = Sheets ( “NotEligibleData”). Range ( “A”& Rows.Count) .End (xlUp) .Offset (1)

위 코드는 자격이없는 고객을 “NotEligibleData”시트에 복사하는 데 사용됩니다.

아래 코드를 따르세요

Private Sub Worksheet_Change(ByVal Target As Range)

'Declaring variables

Dim i, Lastrow As Long

'Execute code if value in seventh column is changed

If Target.Column = 7 Then

'Getting the row number of last cell

Lastrow = Sheets("Main").Range("A" & Rows.Count).End(xlUp).Row



'Deleting any previous data from "NotEligibleData" sheet

Sheets("NotEligibleData").Range("A2:I600").ClearContents



'Looping from tenth row to last row

For i = 10 To Lastrow



'If value in G column of the row is "Not" then copy the row to destination sheet

If Sheets("Main").Cells(i, "G").Value = "Not" Then

Sheets("Main").Cells(i, "G").EntireRow.Copy Destination:=Sheets("NotEligibleData").Range("A" & Rows.Count).End(xlUp).Offset(1)

End If

Next i

End If

Range("A1").Select

End Sub

이 블로그가 마음에 들면 Facebook 및 Facebook에서 친구들과 공유하십시오.

여러분의 의견을 듣고 싶습니다. 작업을 개선하고 더 나은 서비스를 제공 할 수있는 방법을 알려주십시오. [email protected]로 문의 해주세요