Recordset 오브젝트의 Find방법을 이용하면 지정한 조건에 일치하는 레코드를 검색하고 그 레코드를 최신 레코드라 한다.레코드가 발견되지 않았던 때는 Recordset 오브젝트의 BOF속성 또는 EOF속성이 True이 되고 최신 레코드는 미정의 된다.
【서식】
recordset :
Criteria :
SkipRows :
SearchDirection : Start :
◆SearchDirection
정수 |
값 |
설명 |
adSearchBackward |
-1 |
후방 검색을 하고 Recordset 의 앞으로 종료한다.일치하는 레코드가 발견되지 않는 경우,레코드 포인터는 BOF로 이동한다. |
adSearchForward |
1 |
전방 검색을 하고 Recordset 의 말미에 종료한다.일치하는 레코드가 발견되지 않는 경우,레코드 포인터는 EOF 로 이동한다. |
【포인트】
Criteria인수는 검색에 사용하는 필드,비교 연산 자 검색하는 값으로 구성되는 문장이다. 비교 연산자에 "like" 을(를) 사용하는 경우 문자 열치에 퍼센트 (%) 를 포함하면 1 나루터 또는 복수의 문자 또는 부분 문자열을 검색하는 것이 가능하다.단지 퍼센트는 검색 문자열의 말미에 사용하거나 또는 검색 문자열의 앞과 말미의 양방에서 사용하는 것이 가능하다.
SkipRows인수는 검색 실행 때로는 읽기 날리는 레코드 수이다.이 인수를 생략하거나 또는 0을 지정하면 ,Find 방법은 최신 레코드에서 검색을 한다.만약,최신 레코드가 검색 조건을 채워주고 있는 경우에는 언제나 이 레코드가 검색되고 다른 레코드를 검색하는 것은 불가능하다.SkipRows인수를 1으로 하면,최신 레코드를 읽고 날리고,다음의 레코드를 검색하는 것이 가능하다.
SearchDirection인수는 검색의 방향을 지정한다.Recordset 오브젝트의 CursorType속성이 adOpenForwardOnly의 경우는 최신 레코드에서 앞 레코드 방향에의 검색은 실행할 수 없다.
Start인수는 검색 개시 위치를 지정한다.생략한 경우는 최신 레코드에서 검색을 개시한다.
■ 검색 조건의 서식
검색에 사용하는 필드의 데이터 형태에 의해 검색하는 값의 서식이 다르다.
●텍스트 형태의 필드의 경우 검색하는 값을 Single Quation(')으로 묶어야 한다.
검색하는 값을 변수로 지정하는 경우에도 Single Quation이 필요하다.
(예) RS.Find "클래스 = 'TA'"
RS.Find "클래스 = ' " & Str & "'"
●수치 형의 필드의 경우에는 검색하는 값을 그대로 기술한다.
(예) RS.Find "점수 > 80"
RS.Find "점수 > " & Str
●날짜 시각 형필드의 경우,검색하는 값을 샾기호(#)으로 묶어야 한다.검색하는 값
을 변수로 지정하는 장소
합도 샾기호가 필요합니다.
(예) RS.Find "입학 일 = #2004/04/01#"
RS.Find "입학 일 = # " & Str & "#"