엑셀 VBA #42 / Find메서드_기본 [VBA]
반응형

엑셀 VBA #42 / Find메서드_기본 [VBA]

 

 

 

 

예시1.

B-1제품코드의 판정값 불러오기....
For~Next구문 혹은 For Each~Next구문 사용해도 되나, 자료가 방대한 경우 속도가 느려질 수 있음.

Dim rng As Range, cf As Range

Set rng = Range("A2", Cells(Rows.Count, "A").End(xlUp))
Set cf = rng.Find(Range("D2").Value, , , xlWhole)

    'cf는 rng영역 중에서 D2셀과 같을 가지는 셀의 주소

Range("E2") = cf.Offset(, 1)

  '    'Range("E2") = cf.Offset(, 1).value'  로 해도 동일한 결과가 나오네.......




예시2
Dim rng As Range, cf As Range

Set rng = Range("A2", Cells(Rows.Count, "A").End(xlUp))
Set cf = rng.Find(Range("D2").Value, , , xlWhole)

Range("E2").ClearContents

If Not cf Is Nothing Then
    Range("E2") = cf.Offset(, 1)
Else
    MsgBox "해당되는 제품코드가 없습니다."
End if

vba#42.xlsm
0.02MB

 

Find 함수
Find 함수는 엑셀에서 데이터가 일치하거나, 또는 부분일치하는 값을 찾는 VBA 메서드(함수)이다. Find 함수의 기본 사용법은 아래와 같다.
※ 사용법
셀 범위(Range).Find(What:=찾을 값,Lookat:=xlWhole)
-. Lookat:= xlWhole 일 경우 찾을 값과 전체 일치하는 값을 찾음
   Lookat:= xlPart는 부분적으로 일치해도 값을 찾은 것으로 인식
-. 참고로 Find는 값을 찾는다고 설명하였지만 Range 의 형식을 갖는다.(아래에서 설명)
출처: https://ybworld.tistory.com/75 [투손플레이스:티스토리]

 

 

 

 

https://www.youtube.com/watch?v=tx7vfkhg0xU&list=PLfxvqpVCYZ8e0qlyc_FU46neoWjO7yTWj&index=42


반응형
  Comments,     Trackbacks
최근 작성 글
최근 작성 댓글
최근 작성 트랙백
프로필
공지사항
글 보관함
캘린더
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
TODAY TOTAL