Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

PDF(001-027)VBEditor-5차 2019.9.

10 8:6 AM 페이지1

PDF

VBEditor
알짜사전
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지15

VBEditor 알짜사전-데이터베이스

● 작업파일

01 폼 개체 열기(DoCmd.OpenForm)
기본문법

DoCmd.OpenForm “폼개체이름”[ , 폼보기형식 , , 조건식 ]

폼보기형식

조건식

기본 문법에서 사용한 대괄호([ ])는 생략할 수 있다는 기호이며, 직접 입력하는 것은 아니다.‘폼보기형식’


인수 다음에 쉼표(,)를 2번 연속 입력하는 이유는‘폼보기형식’다음에‘Filter Name’
이란 인수를 지정하
는 위치이기 때문에 이 부분을 생략하기위해 쉼표를 2번 연속 입력한 후‘조건식’인수를 입력한다

1. 조건이 없는 경우
① <일일소비입력> 폼의 본문에서 분류(txt분류코드) 컨트롤을 더블클릭하면, <분류참조> 폼이 열리도록 설정하시오.

코드 설명

2. 조건이 하나인 경우
① <제품조회> 폼의 거래처보기(cmd거래처) 버튼을 클릭할 때 다음과 같이 기능을 수행하도록 구현하시오.

코드 1 ‘거래처코드’필드의 데이터 형식이‘텍스트’


인 경우

15
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지16

VBEditor 알짜사전

코드 2 ‘거래처코드’필드의 데이터 형식이‘일련번호’


,‘숫자’
,‘통화’
인 경우

코드 3 ‘거래처코드’필드의 데이터 형식이‘날짜/시간’


인 경우

설명

- 데이터 형식에 상관없이 하나의 형태로 편리하게 작성할 수 있다.


- OpenForm 매크로 함수를 선택하고 폼 이름, 보기 형식을 지정한 후 Where 조건문의 작성기 단추를 누
르고 ❶ [거래처코드]= 을 먼저 입력하고 나타낼 폼을 찾아서 ❷의 경로로 들어가 ❸을 더블클릭하면 [거
래처코드]=Forms![제품조회]![txt거래처코드]의 형태로 입력된다.

16 PDF
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지17

3. 조건이 2개인 경우(AND/OR)

① <종합분석> 폼의 조회(cmd조회) 버튼을 클릭하면 <과목별분석> 폼을 나타내는 기능을 다음과 같이 수행하도록 구현


하시오.

코드

설명

※ AND/OR 연산자를 사용한 2개 이상의 조건 지정은‘보고서 개체 열기’


,‘조회’작업 등에서도 응용될
수 있으며, 사용 방법은 위와 동일하다.

02 보고서 개체 열기
기본문법

DoCmd.OpenReport “보고서개체이름”[ , 보기형식 , , 조건식 ]

보기형식

조건식

① <주문관리> 폼의 주문보고서(cmd보고서) 버튼을 클릭할 때 다음과 같이 기능을 수행하도록 구현하시오.

17
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지18

VBEditor 알짜사전

코드 1 ‘주문코드’필드의 데이터 형식이‘텍스트’


인 경우

코드 2 ‘주문코드’필드의 데이터 형식이‘일련번호’


,‘숫자’
,‘통화’
인 경우

코드 3 ‘주문코드’필드의 데이터 형식이‘날짜/시간’


인 경우

설명

03 개체 닫기(DoCmd.Close)
기본문법

DoCmd.Close [개체타입,“개체이름”, 저장여부 ]

개체타입

“개체이름”
저장여부

18 PDF
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지19

① <단어별검색> 폼의 종료(cmd종료) 버튼을 클릭하면 현재 폼을 닫는 기능을 수행하도록 구현하시오.

코드 설명

② <판매조회> 폼의 상세창닫기(cmd상세창닫기) 버튼을 클릭하면 <상세보기> 폼을 닫는 기능을 수행하도록 구현하시오.

코드

③ <판매조회> 폼의 닫기(cmd닫기) 버튼을 클릭하면 다음과 같은 기능을 수행하도록 구현하시오.

설명

19
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지20

VBEditor 알짜사전

04 작업
1. Filter 속성 이용

기본문법

폼개체이름.Filter =“조건식”

폼개체이름.FilterOn = True

1-1. 기본 조회

① <반정보> 폼의 조회(cmd조회) 버튼을 클릭하면 해당 반의 정보가 표시되도록 구현하시오.

코드 1 ‘반번호’필드의 데이터 형식이‘텍스 코드 2 ‘반번호’필드의 데이터 형식이‘일련번


트’
인 경우 호’
,‘숫자’
,‘통화’
인 경우

설명

1-2. 날짜 형식의 자료 조회

① <매출입력> 폼의 조회(cmd조회) 버튼을 클릭할 때 다음과 같은 기능을 수행하도록 구현하시오.

코드 설명

20 PDF
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지21

1-3. Like 연산자를 사용한 특정 단어 포함 조회

① <거주지별조회> 폼의 조회(cmd조회) 버튼을 클릭할 때 다음과 같은 기능을 수행하도록 구현하시오.

코드

설명

※ Like 연산자를 사용한 포함 조건 지정은‘폼 열기’


,‘보고서 개체 열기’
, 다른‘조회’작업 등에서도 응용
될 수 있으며, 사용방법은 위와 동일하다.

2. RecordSource 속성 이용
폼이나 보고서 개체의‘레코드 원본’속성을 변경하는 방법으로 SQL 문을 사용하여 조회 조건뿐 아니라 레
코드 정렬 등도 지정할 수 있다.

기본문법

폼개체이름.RecordSource =“SQL 문”

2-1. 모든 자료 조회
① <주문관리> 폼의 조회할 주문번호‘txt주문번호’컨트롤에 주문번호를 입력하고 조회(cmd조회) 버튼을 클릭하면 다
음과 같은 기능을 수행하도록 구현하시오.

21
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지22

VBEditor 알짜사전

코드 1 ‘주문번호’필드의 데이터 형식이‘텍스트’


인 경우

코드 2 ‘주문번호’필드의 데이터 형식이‘일련번호’


,‘숫자’
,‘통화’
인 경우

설명

2-2. 날짜 형식의 자료 조회

① <일별조회> 폼의 조회(cmd조회) 버튼을 클릭할 때 다음과 같은 기능을 수행하도록 구현하시오.

코드

설명

2-3. FindFirst 메서드와 Bookmark 속성 이용

Filter나 RecordSource 속성이 조건에 맞는 레코드만 화면에 표시하는 방법인데 비해 FirstFind 메서드와
Bookmark 속성을 사용하면 조건에 맞는 첫 번째 레코드로 현재 레코드 위치가 이동된다.

22 PDF
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지23

기본문법

폼개체이름.RecordsetClone.FindFirst “조건식”

폼개체이름.Bookmark = 폼개체이름.RecordsetClone.Bookmark

① <제품별조회> 폼에 있는 코드(txt조회) 입력란에 제품코드를 입력하고, 찾기(cmd찾기) 버튼을 누르면 입력된 제품코
드인 제품내역들을 찾아 표시하는 이벤트 프로시저를 구현하시오.

코드 1 ‘제품코드’필드의 데이터 형식이‘텍스트’


인 경우

코드 2 ‘제품코드’필드의 데이터 형식이‘일련번호’


,‘숫자’
,‘통화’인 경우

코드 3 ‘제품코드’필드의 데이터 형식이‘날짜/시간’


인 경우

23
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지24

VBEditor 알짜사전

05 기타 처리 작업
폼이나 보고서 개체를 열거나 특정 레코드만 조회하는 작업 외에도 이벤트 프로시저를 이용하여 컨트롤의
값을 대입하거나 계산식을 작성하는 등의 작업도 출제된다.
값을 대입하는 이벤트 프로시저의 경우 단순한 계산식을 사용하는 경우도 있지만, IF 문이나 Select 문을
사용하여 조건에 따라 다른 값을 대입할 수 있다.

1. 조건 처리

기본문법

If ~ Then 문 If ~ Then 문

If 조건식1 Then
If 조건식 Then 명령1
조건식을 만족할 때 실행할 명령문(들) ElseIF 조건식2 Then
Else 명령 2
조건식을 만족하지 않을 때 실행할 명령문(들) .....
End If Else
명령 3
End IF

조건식을 만족할 때(True)와 그렇지 않을 때(False)를 다르게 처리한다. 조건이 여러 개일 때‘ElseIF’


를 사용하여 여러 조건을 지정할 수 있다.

Select Case 문

Select Case 값 ‘Case 조건’형태는 다음과 같이 3가지 형태 중 하나로 지정할 수 있다.


Case 조건1 ① Case 1, 2 : 값이‘1’또는‘2’인 경우
값이 조건1을 만족할 때 실행할 명령문(들) ② Case Is >= 10 : 값이 10보다 크거나 같은 경우
Case 조건2 ③ Case 1 To 10 : 값이 1~10 사이인 경우
값이 조건2를 만족할 때 실행할 명령문(들)
.....
Case Else
위의 조건이 모두 만족하지 않을 때 실행할 명령문(들)
End Select

24 PDF
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지25

① <사원별평가입력> 폼에서‘txt직무등급’컨트롤이 포커스를 얻으면(Got Focus) 다음과 같은 계산을 수행하도록 구


현하시오.

중첩 IF 문 사용 Select Case 문 사용

2. 도메인 계산식

DCount, DSum과 같이 D로 시작하는 함수를 액세스에서 도메인 집계 함수라 부른다. 컨트롤 원본이 될 수
도 있고, 이벤트 프로시저에 사용되기도 한다.

기본문법

① DCount(
“계산필드이름”
,“테이블(또는, 쿼리)이름 ”
,“조건식”
)
② DSum(
“계산필드이름”
,“테이블(또는, 쿼리)이름 ”
,“조건식”
)
③ D함수명(
“계산필드이름”
,“테이블(또는, 쿼리)이름 ”
,“조건식”
)

도메인 계산 함수의 종류는 DCount, DSum, DLookup, DAvg 등 다양하지만 사용하는 인수는 동일
하며‘D’다음의 함수 명에 따라 기능이 결정된다. DCount는 조건에 맞는 필드의 개수(Count)를 구
하고, DSum은 합계(Sum), DLookup은 특정 필드 값을 찾으며(Lookup), DAvg는 평균(Avg)을 구
해준다.

※ 계산필드이름, 필드명, 컨트롤명에는 [ ]를 둘러싸서 식을 완성하면 편리하다.

25
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지26

VBEditor 알짜사전
2-1. 단순 계산

① <주문입력> 폼의‘txt금액’컨트롤에 포커스가 옮겨가면(Got Focus 이벤트) 다음과 같은 계산을 수행하도록 구현하
시오.

코드

2-2. 도메인 함수 Ⅰ

① <주문입력> 폼의 제품코드(txt제품코드)를 변경한 후에는 해당 제품코드의 재고수량에 대해 표시하는 프로시저를 작성


하시오.

코드 1 ‘제품코드’필드의 데이터 형식이‘텍스트’


인 경우

코드 2 ‘제품코드’필드의 데이터 형식이‘일련번호’


,‘숫자’
,‘통화’
인 경우

설명

26 PDF
PDF(001-027)VBEditor-5차 2019.9.10 8:7 AM 페이지27

2-3. 도메인 함수 Ⅱ

① <계좌이체내역> 폼의 현금이체(cmd현금이체) 버튼을 클릭하면 현금이체 합계에 대한 프로시저를 작성하시오.

코드

설명

27

You might also like