|
* 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.
- 엑셀 버전(95,97,2000,xp,2003,2007):
* 아래줄에 질문을 작성하세요 >>
시트 1, 시트 2개가 있습니다.
제가 find 매서드 를 이해하지 못해서요
짜다가 포기를 했습니다. 시트 1에서 고객번호를 "시트 2" 고객번호에도 있는지 확인후 있으면 고객번호가 같으면 "시트 2" 자료를 "시트 1"옮긴후 시트 2 비고에 1이라고 표시하고 "시트 1"에 자료가 업데이트 되지 않은 고객들은 다 지우려고 했습니다.
그리고 시트1의 고객번호는 텍스트(8자리)로 시트 2의 고객번호는 숫자라서 비교 하기가 쉽지를 않습니다. 도움 부탁드려요
Sub 교체찾기()
Dim s, r, ri, i, t As Integer
Dim rng As Range
Dim rng1 As Range
Dim c As Range
Dim star As String
Set rng = Sheets("처리결과").Columns(1).SpecialCells(xlCellTypeConstants)
Set rng1 = Sheets("대상").Columns(4).SpecialCells(xlCellTypeConstants)
Sheets("대상").Select
Range("b3").Select
Do Until ActiveCell = ""
ActiveCell.Offset(1, 0).Select
Loop
t = ActiveCell.Row
For i = 3 To t - 1
Str = Cells(i, 2)
If Str = rng.Find(c.Value, LookIn:=xlValues) Then
Cells(i, 3) = Sheets("처리결과").Cells(, 3)
Cells(i, 4) = Sheets("처리결과").Cells(, 4)
Cells(i, 5) = Sheets("처리결과").Cells(, 5)
Cells(i, 6) = Sheets("처리결과").Cells(, 6)
Sheets("처리결과").Cells(, 7) = "1" ' 비고에 1이라고 표시
End If
Next
For Each c In rng1
If rng1.Find(c.Value, LookIn:=xlValues) Is Nothing Then c.EntireRow.ClearContents
End If
Next c
rng1.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
Set rng1 = Nothing
End Sub
|
|