컴퓨터활용능력필기
이장에서는 1~2 문제가출제됩니다. 6. 자동화프로그래밍 매크로 & 이벤트프로시저
매크로 매크로특징 응용프로그램에서반복적인작업수행시이를하나의명령어로저장하여사용자가간단하게사용할수있도록하는기능이다. 작업을자동화할때사용할수있는매크로함수나매크로함수집합을의미한다. 매크로함수는주로컨트롤의이벤트에연결하여사용한다. 데이터베이스파일이열릴때자동으로실행되는자동매크로를정의하려면매크로이름에 AutoExec' 를입력한다. 매크로이름열에지정한바로가기키를이용하여매크로를실행할수있다. 선택된매크로함수가여러개인경우실행시위에서아래순서로실행된다. 엑세스에데이터베이스도구 ]-[ 매크로 ]-[ 보고서매크로를 visual basic으로변환 ] 을이용하여작성된매크로를 VBA 모듈로변환시킬수있다. 그룹매크로 : 한개의매크로창에서이름을갖는여러개의매크로를작성하고관리하는것을말한다. 그룹매크로내에서각각의매크로는자신이속한매크로이름으로구분되며, 사용시 그룹매크로명. 매크로명 으로구분하여사용 조건매크로 : IF 문과같이특정조건에맞는경우에만실행되는매크로를말한다. 매크로실행시조건식은계산식형태로작성할수있다. 엑셀은기본적인매크로함수가없지만엑세스는매크로함수가제공되며엑셀과달리기록기능이지원되지않는다.
매크로함수 - 실행관련 매크로함수 설명 RunCommand 액세스내부에서제공하는명령을실행시킨다. Quit 액세스를종료한다. OpenQuery 선택쿼리, 크로스탭쿼리를실행하여여러형태로열수있다.( 디자인보기, 미리보기..) RunCode 프로시저를실행한다. RunMacro 매크로를실행한다. RunSQL SQL문을이용하여엑세스의실행쿼리를실행한다. RunApp 메모장, 엑셀등의윈도우관련응용프로그램이나외부프로그램을실행한다. 매크로함수 - 가져오기 / 내보내기관련 OutputTo 매크로함수 설명 데이터베이스개체를엑셀 (*.XLS) 텍스트 (*.TXT), 서식있는문서파일 (*.RTF) 형식등으로내보내기한다. SendObject 데이터베이스개체를전자우편메시지에첨부하여전송한다. TransferDatabase 다른데이터베이스파일과의내보내기, 가져오기, 연결등을지원한다. TransferSpreadsheet 스프레드시트파일과의내보내기, 가져오기, 연결등을지원한다. TransferText 엑세스데이터베이스와텍스트파일간의내보내기, 가져오기, 연결등을지원한다.
이벤트프로시저 (Event Procedure) 시스템에의해발생되는이벤트에대응하여자동으로실행되는프로시저를의미한다. 이벤트종류 AfterUpdate 컨트롤이나레코드데이터가업데이트된후에발생한다. BeforeUpdate 컨트롤이나레코드의변경된데이터가업데이트되기전에발생한다. Change 텍스트상자의내용이나콤보상자의내용이바뀔때발생한다. 데이터이벤트포커스가임의의레코드로이동되어그레코드가현재레코드가되거나폼이새 Current 로이고쳐지거나다시질의될때발생한다. Afterinsert 새로운레코드가추가된후에발생한다. BeforeInset 새레코드에내용을입력할때발생한다. Click 개체를마우스단추로눌렀다놓을때발생한다. 마우스 DblClick 개체를마우스로더블클릭했을때발생한다. 이벤트 MouseDown 마우스단추를눌렀을때발생한다. KeyDown 키보드 폼이나컨트롤에포커스가있는동안키를누르면발생한다. KeyPress 이벤트 폼이나컨트롤에포커스가있을때 ANSI코드에해당하는키를누르면발생한다.
이벤트종류계속 Activate 폼이나보고서가포커스를받아현재창이활성화될때발생한다. Enter 폼의다른컨트롤에서특정컨트롤로포커스가실제로옮겨지기전에발생한다. 포커스이벤트 GotFocus 컨트롤에서포커스를받을때발생한다. LostFocus 컨트롤이포커스잃을때발생한다. Load Unload Open 창이벤트 폼이열리고폼의레코드가표시될때발생한다. 폼이닫히고레코드가언로드될때즉, 폼이화면에서사라지기전에발생한다 폼을열어레코드를처음표시하기전또는보고서를열어인쇄하기전에발생 Close 폼이나보고서를닫아서화면에서사라질때발생한다. Resize 폼의크기가바뀔때, 폼이처음으로표시될때발생한다. 개체종류 form 개체 열려있는폼을참조하는개체로써주요메소드와속성은아래와같다. Requery 컨트롤의원본데이터를다시쿼리하여업데이트한다. Recordsource 폼의데이터원본을지정한다. Refresh 데이터원본으로사용하는레코드를즉시업데이트한다. RecordsetClone 폼의레코드셋개체를참조한다. SetFocus 지정한컨트롤로포커스를이동한다. Bookmark 폼이원본으로사용하는테이블, 쿼리, sql 의특정레코드를고유하게식별하는책갈피지정 Undo 값이변경된컨트롤을원래상태로되돌린다. Visible 폼, 보고서, 컨트롤표시여부결정
예제 ) Me.requery -- 현재폼에대해데이터내용업데이트 Txt 학번.setfocus txt 학번컨트롤에포커스를옮기라는의미 개체종류 DoCmd 개체 엑세스의매크로함수를 visual basic 에서실행하기위한개체이다. 사용방법 : Docmd. 매크로함수 OpenReport Openreport 매크로함수실행 ( 보고서연다.) OpenForm OpenForm 매크로함수실행 ( 폼을연다.) RunSQL Runsql 매크로함수를실행 RunCommand 메뉴나명령어를실행한다. RunMacro RunMacro 매크로함수를수행한다. OutputTo OutputTo 매크로함수를수행한다.( 데이터베이스개체를다른형식으로내보낸다.) Close Close 매크로함수를수행한다.
데이터베이스접근개체 - recordset 테이블이나실행된명령결과로얻은데이터를임시로저장해두는레코드집합을의미 속성과메소드 ActiveConnection 지정된개체가현재속해있는 connection 개체를나타낸다. CursorType Recordset 개체에서사용되는커서의유형을나타낸다. LockType 속성편집하는동안레코드에설정된잠금유형을나타낸다. RecordCount 레코드셋개체의현재레코드개수를카운트 BOF/EOF 현재레코드위치가레코드셋개체의처음 / 마지막레코드앞뒤에온다는것을의미한다. Open 연결된데이터레코드셋개체를연다. Close 연결된데이터레코드셋개체를닫는다. Update 레코드셋개체의변경사항을저장한다. Addnew 메소드 레코드셋에새로운레코드를추가한다. Delete 현재레코드혹은레코드그룹을삭제한다. Find 레코드셋에정의된기준에맞는레코드를차례대로검색한다. Seek 레코드셋의인덱스를검색하여지정된값에일치하는행을신속하게찾은다음현재레코드위치를해당레코드로변경한다.
데이터베이스접근개체 -ADO OLE 데이터베이스를활용하여기존의데이터베이스는물론엑셀등스프레드시트파일, 텍스트파일등외부데이터를적극활용하도록고안된접근객체이다. CONNECTION 개체 데이터베이스연결할때사용되며연결할서버와데이터베이스를결정하고필요한명령실행과결과값을가져온다. ConnectionString State Open 속성 데이터원본에연결구성하는데사용하는정보표시 Connection 개체가열려있는지여부표시 연결된데이터원본개체를연다. Close 메소드연결된데이터원본개체를닫는다. Execute 쿼리, SQL, 저장프로시저등을실행한다.
이장의주요기출문제 1. 다음중엑세스에서매크로에대한설명으로옳지않은것은? 가. 하나의매크로그룹에여러개의매크로를만들수있다. 나. 하나의매크로에여러개의매크로함수를지정할수있다. 다. Autoexec이라는특수한매크로이름을사용하면테이블이열릴때마다자동으로실행된다. 라. 매크로실행시에필요한정보, 즉인수를지정할수있다. 2. 다음중 Visual Basic 에서 microsoft Access 매크로함수를실행할수있는엑세스개 체는무엇인가? 가. Application 개체 다. Docmd 개체 나. Form 개체 라. CurrentData 개체