[컴퓨터활용능력 1급 필기] 11년 2회차 시험지 PDF 다운로드
11년 2회차
TELNET은 원격지에 있는 컴퓨터에 접속하여 마치 그 컴퓨터를 직접 사용하는 것처럼 작업을 수행할 수 있게 해 주는 원격 접속 서비스이다.
파일 전송은 FTP, 원격 컴퓨터의 사용자 정보 조회는 Finger, 전자우편 송신 프로토콜은 SMTP가 담당한다.
인쇄 대기열(스풀러)에 들어간 문서는 이미 인쇄 설정이 적용된 상태로 대기 중이므로, 용지 방향·용지 공급·인쇄 매수와 같은 설정은 인쇄 대기열 창에서 변경할 수 없다. 이러한 설정은 인쇄를 실행하기 전 인쇄 대화상자에서 지정해야 하므로 이 설명이 틀리다.
인쇄 중 알림 영역에 프린터 아이콘이 표시되었다가 완료 시 사라지는 것, 대기열에 문서 상태·페이지 수 등 정보가 표시되는 것, 대기열에서 프린터 작동을 일시 중지·재개하거나 인쇄를 취소할 수 있다는 설명은 옳다.
객체 지향 언어는 GOTO문으로 흐름을 제어하는 방식이 아니라, 객체 간의 메시지 전달과 메서드 호출을 통해 동작한다. 순차·선택·반복 구조를 GOTO문으로 구현한다는 설명은 오히려 구조적 프로그래밍 이전 방식에 대한 설명이므로 객체 지향의 특징이 아니다.
클래스가 데이터 형과 함수를 함께 정의한 것이라는 것, 객체가 속성·메서드를 상속받고 재사용할 수 있다는 것, 메소드가 객체가 수행하는 특정한 작업이라는 설명은 옳다.
반이중 통신은 양방향으로 송수신이 가능하지만 동시에는 불가능하며, 어느 한 순간에는 송신이나 수신 중 하나만 이루어지는 방식이다. 대표적인 예가 무전기다.
한쪽 방향으로만 송수신이 가능한 것은 단방향(심플렉스) 통신이고, 동시에 양방향 송수신이 모두 가능한 것은 전이중(풀 듀플렉스) 통신으로 일반 유선 전화기가 그 예이다. 무전기를 동시 양방향 송수신의 예로 든 설명은 방식과 예가 어긋나 옳지 않다.
[시스템 구성 유틸리티]의 [BOOT.INI] 탭에서 지정할 수 있는 부팅 옵션에는 /SAFEBOOT, /NOGUIBOOT, /BOOTLOG, /SOS 등이 있다. 부팅 과정을 로그로 기록하는 옵션의 정확한 이름은 /BOOTLOG이며, /LOGBOOT라는 옵션은 존재하지 않는다.
공유 폴더의 속성을 숨김으로 설정하는 것은 폴더가 눈에 잘 띄지 않게 할 뿐, 네트워크를 통한 바이러스 감염을 막는 근본적인 예방책이 되지 못한다. 이 설명이 틀리다.
다운로드하거나 외부에서 가져온 파일을 검사 후 사용하는 것, 발신자 불명의 전자우편을 열지 않고 삭제하는 것, 백신 프로그램을 업데이트해 주기적으로 검사하는 것은 올바른 바이러스 예방·치료 방법이다.
Windows XP의 [그림판]은 레이어 기능을 제공하지 않는 단순한 비트맵 편집 프로그램이다. 레이어로 그림 작성과 편집을 돕는다는 설명이 틀리다.
BMP·JPG·GIF 등의 형식으로 저장할 수 있는 것, 색상표에서 마우스 오른쪽 버튼으로 배경색을 지정하는 것, 타원·직사각형 도구를 선택한 뒤 Shift 키를 누른 채 그리면 정원·정사각형이 그려진다는 설명은 옳다.
하드 디스크는 RPM(분당 회전수) 수치가 클수록 데이터 접근 속도가 빨라져 성능이 좋다. RPM이 작을수록 성능이 좋다는 설명이 틀리다.
메인보드가 새 CPU를 지원하지 않으면 메인보드도 함께 교체해야 한다는 것, 램은 접근 속도 단위인 ns(나노초) 수치가 작을수록 성능이 좋다는 것, 하드웨어 업그레이드 시 반드시 전원을 끄고 작업한다는 설명은 옳다.
코덱(CODEC)은 음성이나 영상의 아날로그 신호를 디지털 신호로 변환(부호화)하거나, 반대로 디지털 데이터를 원래 신호로 복원(복호화)하는 기능을 함께 포함한 기술이다.
동영상·음악을 제작·녹음·편집하는 것은 오디오·비디오 편집 기술이고, 복원 결과가 원본과 완전히 일치하는 것은 무손실 압축의 특징이며, 장면을 프레임 별로 편집하는 것도 코덱의 정의가 아니다.
HTML은 인터넷에서 하이퍼텍스트 문서를 제작하기 위해 사용되는 언어이다.
태그를 사용자가 직접 정의할 수 있는 것은 XML, 서버 측에서 동적 페이지를 생성하는 것은 ASP·JSP·PHP 같은 언어, 웹상에서 3차원 가상공간을 표현하는 것은 VRML이다.
채널(Channel)은 CPU와 입출력장치(주변장치) 사이의 속도 차이를 해소하기 위해 사용되는 것이며, CPU와 주기억장치 사이의 속도 차이를 해결한다는 설명은 틀리다. CPU와 주기억장치의 속도 차이를 줄이는 데 쓰이는 것은 캐시 메모리다.
채널이 CPU 대신 주변장치의 입출력을 관리하고 작업이 끝나면 CPU에 인터럽트 신호를 보낸다는 것, 셀렉터·멀티플렉서·블록 멀티플렉서 채널이 있다는 설명은 옳다.
IP는 발신지에서 목적지까지 데이터그램이 전달되도록 주소 지정과 경로 설정(라우팅)을 담당하는 비연결형 프로토콜이며, 오류보고·상황보고 기능은 IP가 아니라 ICMP가 수행한다. 오류보고·상황보고까지 IP의 기능으로 설명한 것은 틀리다.
TCP/IP가 인터넷 연결을 위한 프로토콜이라는 것, TCP가 두 종단 간 연결을 설정한 후 데이터를 패킷 단위로 교환한다는 것, IPv6가 IPv4의 주소 고갈 등 한계로 인해 출현했다는 설명은 옳다.
유니코드는 아스키 코드를 32비트가 아니라 16비트로 확장하여 만든 국제 표준 코드 체계이다. 32비트로 확장했다는 설명이 틀리다.
세계 각국의 언어를 통일된 방법으로 표현하도록 제안된 국제 코드 규약이라는 것, 한글의 조합형·완성형·옛글자를 모두 표현할 수 있다는 것, 최대 65,536자(2의 16제곱)를 코드화할 수 있다는 설명은 옳다.
Windows에서 사용하는 글꼴 파일은 TTF·FON·FOT 등의 확장자를 가지며, png나 txt 확장자를 갖지 않는다. 이 설명이 틀리다.
C:\Windows\Fonts 폴더에 글꼴이 설치되어 있다는 것, 글꼴 폴더에서 설치된 글꼴을 제거할 수 있다는 것, [제어판]의 '글꼴'을 더블 클릭해 설치된 글꼴을 확인할 수 있다는 설명은 옳다.
선택한 항목의 등록 정보(속성)를 표시하는 바로가기 키는 <Alt>+<Enter>이며, <Shift>+<F10>은 마우스 오른쪽 버튼을 눌렀을 때와 같은 바로 가기(단축) 메뉴를 표시하는 키이다. 이 설명이 틀리다.
<F5>로 최신 정보로 고치기, <Alt>+<Spacebar>로 현재 창의 창 조절 메뉴 표시, <Ctrl>+<Shift>+<Esc>로 Windows 작업 관리자를 호출한다는 설명은 옳다.
USB 메모리와 같은 이동식 저장장치에 있는 파일은 휴지통 개념이 적용되지 않아, 휴지통 아이콘으로 드래그 앤 드롭해 삭제해도 휴지통을 거치지 않고 바로 영구 삭제된다.
하드디스크(C드라이브)나 바탕 화면의 파일을 [파일]-[삭제] 메뉴, <Delete> 키, 바로 가기 메뉴의 [삭제]로 지운 경우에는 모두 휴지통으로 이동할 뿐 영구 삭제되지 않는다.
시작 메뉴를 표시하는 바로가기 키는 <Ctrl>+<Esc> 또는 Windows 키이며, <Alt>+<Esc>는 열려 있는 창들을 순서대로 전환하는 키이다. 이 설명이 틀리다.
바로가기 목록을 삭제해도 실제 프로그램은 삭제되지 않는다는 것, 아이콘을 [시작] 단추로 드래그해 고정 항목 목록에 추가할 수 있다는 것, [작업 표시줄 및 시작 메뉴 속성] 창에서 이전 버전의 시작 메뉴로 변경할 수 있다는 설명은 옳다.
CMOS 셋업 비밀번호를 잊었을 때 가장 확실한 해결 방법은 메인보드에 장착된 배터리를 분리했다가 다시 장착하여 CMOS 설정 내용을 초기화하는 것이다.
CMOS 정보는 하드디스크가 아니라 메인보드의 CMOS RAM에 배터리 전원으로 유지되므로, 하드디스크 포맷이나 운영체제 재설치, 시동 디스크 부팅, 리셋 버튼으로는 비밀번호가 지워지지 않는다.
[로컬 영역 연결 속성] 창은 네트워크 어댑터에 설치된 클라이언트·서비스·프로토콜과 같은 구성 요소를 설치·제거하고 속성을 설정하는 곳이며, 파일이나 폴더를 공유하기 위한 옵션은 각 파일·폴더 속성의 공유 탭에서 설정한다. 이 설명이 틀리다.
네트워크 구성 요소의 설치·제거 및 속성 설정, 네트워크에서 실행되는 서비스 선택, 인터넷 연결 방화벽 설정과 같은 기능은 이 창에서 할 수 있다는 설명은 옳다.
FTP로 그림 파일이나 실행 파일과 같은 이진 파일을 전송할 때는 텍스트(ASCII) 모드가 아니라 바이너리 모드로 전송해야 한다. 이 설명이 틀리다.
기본 포트로 21번을 사용한다는 것, 파일을 송수신하기 위한 서비스라는 것, 계정 없이도 접근해 사용할 수 있는 서버를 Anonymous FTP 서버라 한다는 설명은 옳다.
VBA에서 Event(이벤트)는 개체에서 발생하는 사건(클릭, 로드 등)을 의미하며, 개체의 모음을 뜻하는 것은 컬렉션(Collection)이다. Event를 개체의 모음이라고 설명한 것이 틀리다.
Object가 처리 대상이 되는 독립적인 사물이라는 것, Method가 '개체명.메서드' 형태로 사용하는 개체의 동작이라는 것, Property가 개체가 가진 고유한 성질이라는 설명은 옳다.
특정 통합문서의 특정 워크시트에서 셀을 참조할 때는 Workbooks("파일명").Worksheets("시트명").Range("셀주소")의 형태로 작성한다. 이 방식으로 A1 셀을 나타낸 것이 옳은 표현이다.
Cells는 Cells(행번호, 열번호)처럼 숫자 인덱스를 써야 하므로 Cells(A,1)은 잘못된 표기이고, rows(1)은 1행 전체, columns(1)은 1열 전체를 가리켜 특정 셀 하나를 지정하지 못한다.
데이터 표(What-If 분석의 표) 기능으로 계산된 결과값은 배열 수식으로 한꺼번에 입력되기 때문에, 표 범위 안의 일부 셀만 따로 수정하거나 삭제할 수 없다. 표 전체를 지우거나 다시 만들어야 한다.
반면 수식이 입력될 범위를 먼저 지정한 뒤 표 기능을 실행해야 올바른 결과를 얻을 수 있다는 점, 참조 데이터가 바뀌면 표의 계산 결과가 자동으로 갱신된다는 점, '열 입력 셀'만 지정하는 경우는 참조 데이터가 하나의 열에 입력된 경우라는 점은 모두 데이터 표 기능의 올바른 특징이다.
SUMPRODUCT 함수는 배열의 대응하는 원소끼리 곱한 뒤 그 곱들을 모두 더한다. {1,2,3}과 {4,5,6}을 각각 곱하면 1×4, 2×5, 3×6이 되고, 이를 더하면 4+10+18=32이다.
따라서 이 수식의 결과값은 32가 된다.

워크시트에는 성명·국어·영어·수학과 함께 SUM 함수로 계산한 총점이 들어 있다. 홍길동은 80·90·80으로 총점 250, 김철수는 90·95·90으로 275, 이영희는 95·85·85로 265이며, 이 총점 범위가 세로 막대 차트로 그려져 홍길동의 막대가 선택되어 있다.
차트의 데이터 요소(막대)를 마우스로 끌어 값을 바꾸려 할 때, 그 값이 들어 있는 셀이 수식으로 계산된 셀이면 값을 직접 고칠 수 없다. 이때 엑셀은 수식이 끌어놓은 높이만큼의 결과를 내도록 입력값을 거꾸로 찾아 주는 기능을 자동으로 띄우는데, 그것이 목표값 찾기 대화상자다. 여기서 수식 셀(총점), 찾는 값(끌어놓은 새 총점), 값을 바꿀 셀(국어·영어·수학 중 하나)을 지정하게 된다.
해 찾기는 여러 제약 조건 아래 최적해를 구하는 추가 기능이고, 데이터 분석은 통계 분석 도구 모음이며, 수식 분석은 참조하는 셀·참조되는 셀을 추적하는 기능이어서 막대 끌기와는 연결되지 않는다.
여러 시트를 한꺼번에 선택하려면 시트 탭에서 마우스 오른쪽 버튼을 눌러 바로 가기 메뉴의 모든 시트 선택 항목을 이용하면 통합 문서의 모든 시트가 한 번에 선택된다.
연속된 여러 시트를 선택할 때는 첫 시트를 클릭한 뒤 <Shift> 키를 누른 채 마지막 시트를 클릭해야 하며(<Ctrl>이 아니다), 떨어져 있는 시트를 선택할 때는 반대로 <Ctrl> 키를 눌러야 한다. 다음/이전 워크시트로 전환하는 단축키는 <Ctrl>+<Page Down>/<Page Up>이다.

그림은 [통합 문서 보호] 대화상자로, 보호할 대상에서 구조(S)와 창(W)이 모두 선택되어 있고 암호(옵션) 입력란에도 암호가 지정되어 있다.
구조를 보호하면 시트의 삽입·삭제·이동·복사·숨기기·이름 바꾸기처럼 시트 구성을 바꾸는 작업이 모두 막히고, 창을 보호하면 새 창·창 나누기·틀 고정과 같이 창 배치를 바꾸는 작업이 막힌다. 또 암호를 지정했으므로 보호를 풀 때 암호를 묻는다.
그러나 통합 문서 보호가 지키는 것은 시트 구성과 창일 뿐이어서, 셀에 데이터를 입력·수정·삭제·삽입하는 작업은 그대로 할 수 있다. 셀 편집을 막으려면 통합 문서 보호가 아니라 해당 시트에 시트 보호를 걸어야 한다.
PMT 함수는 =PMT(이자율, 기간, 현재가치)의 형태로 사용하며, 월 단위 상환액을 구하려면 연이율과 연 단위 기간을 각각 12로 나누고 곱해 월 단위로 맞춰야 한다.
대출금 50,000,000원, 연 5%, 10년(=10×12개월)의 조건을 대입하면 =PMT(5%/12, 10*12, -50000000)이 되며, 현재가치를 음수로 넣어야 결과값인 상환액이 양수로 표시된다.
Visual Basic Editor에서 매크로의 실행을 위해서 사용하는 바로 가기 키는 ( ㉮ )이고, 한 단계씩 코드를 실행하기 위한 키는 ( ㉯ )이다.
제시된 문장은 Visual Basic Editor(VBE)에서 쓰는 실행 관련 바로 가기 키를 묻고 있다.
커서가 놓인 프로시저를 처음부터 끝까지 한 번에 실행하는 키는 F5(Sub/사용자 정의 폼 실행)이고, 코드를 한 줄씩 짚어가며 실행해 흐름과 변수 값을 확인하는 디버깅용 키는 F8(한 단계씩 코드 실행)이다.
F4는 속성 창을 여는 키, F9는 커서가 있는 줄에 중단점을 설정하거나 해제하는 키, Ctrl+F9는 다음에 실행할 문을 지정하는 키여서 빈칸에 들어갈 수 없다.
행/열 머리글의 인쇄 여부는 '시트' 탭에서 설정하는 항목이며, '머리글/바닥글' 탭의 머리글 영역은 각 페이지 상단에 표시할 문자열(제목, 페이지 번호 등)을 지정하는 곳이다.
용지 방향·크기·인쇄 품질 설정, 차트를 선택한 상태에서 페이지 설정을 열면 '시트' 탭이 '차트' 탭으로 바뀌는 것, 여백을 사용자가 직접 입력할 수 있는 것은 모두 페이지 설정 대화상자의 올바른 특징이다.

그림은 3차원 차트의 [3차원 보기] 대화상자로, 상하 회전 25, 좌우 회전 0, 높이는 항목 축 길이의 50%로 설정되어 있고, 위·아래 화살표 단추와 좌우 회전 단추로 보는 각도를 조정하게 되어 있다.
이 대화상자의 <기본값> 단추는 회전 각도·높이 등 3차원 표시 설정을 처음 값으로 되돌리는 역할만 한다. 차트 종류 자체를 2차원으로 바꾸지는 않으며, 차원을 바꾸려면 차트 종류를 다시 지정해야 한다.
나머지 설명은 대화상자의 동작과 맞는다. 직각 축으로 고정을 선택해야 자동 크기 조절을 설정할 수 있고, 자동 크기 조절이 켜지면 높이를 엑셀이 스스로 정하므로 높이(I) 입력란은 사용할 수 없게 된다. 또 이 대화상자에서 높이·원근감·상하좌우 회전을 모두 조정할 수 있다.
'자동 맞춤'은 지정한 용지 너비와 높이에 맞도록 인쇄물을 확대하거나 축소하여 출력하는 기능으로, 데이터 양이 많으면 축소되고 적으면 확대되는 식으로 조정된다. 확대 인쇄만 이루어진다고 단정할 수 없다.
시트의 일부분만 선택해 인쇄할 수 있는 점, 확대/축소 배율을 10%에서 400%까지 설정할 수 있는 점, '간단하게 인쇄'를 체크하면 워크시트에 삽입된 그림 등의 개체가 인쇄되지 않는 점은 모두 옳은 설명이다.
텍스트 파일의 데이터를 가져올 때는 텍스트 마법사를 이용해 곧바로 외부 데이터 범위로 가져올 수 있으며, 반드시 별도의 쿼리를 만들어야 하는 것은 아니다.
웹 쿼리로 인트라넷·인터넷의 데이터를 가져올 수 있는 점, 외부 데이터베이스 외에 엑셀 목록이나 텍스트 파일의 데이터도 가져올 수 있는 점, 관계형 데이터베이스에서 여러 테이블로 구성된 데이터를 가져올 수 있는 점은 모두 옳은 설명이다.
| 임금 | 년도 | 인원 |
|---|---|---|
| <220 | 2005 | |
| >=1000 |
고급 필터의 조건 범위는 필드 이름 아래에 조건을 적되, 같은 행에 적은 조건은 AND(그리고), 다른 행에 적은 조건은 OR(또는)로 묶인다.
제시된 조건 범위는 첫 조건 행에 임금 <220 과 년도 2005 가 나란히 놓여 있고, 그 아래 행에 인원 >=1000 이 따로 적혀 있다. 따라서 임금과 년도 조건은 함께 만족해야 하고, 그렇게 만들어진 조건과 인원 조건은 둘 중 하나만 만족해도 추출된다.
정리하면 (임금이 220 미만이면서 년도가 2005인 데이터) 또는 (인원이 1000 이상인 데이터) 가 선택된다. 세 조건을 모두 만족해야 하는 것도 아니고, 인원 조건이 나머지 두 조건에 함께 걸리는 것도 아니다.
| A | B | C | |
|---|---|---|---|
| 1 | 주소 | 사원수 | 출신지 |
| 2 | 서귀포시 | 10 | 서귀포 |
| 3 | 여의도동 | 90 | 여의도 |
| 4 | 김포시 | 50 | 김포 |
| 5 | 保寧時 | 20 | 保寧 |
[A2:A5]의 주소는 서귀포시·여의도동·김포시·保寧時이고, [C2:C5]의 출신지는 서귀포·여의도·김포·保寧이다. 즉 원래 문자열에서 맨 뒤 한 글자를 떼어 낸 결과를 구하는 문제다.
LEN 함수는 문자열의 글자 수를 돌려주므로 LEN(A2)-1 은 마지막 한 글자를 뺀 길이가 된다. 여기에 왼쪽부터 지정한 개수만큼 잘라 내는 LEFT 함수를 씌운 =LEFT(A2, LEN(A2)-1) 을 [C2]에 넣고 아래로 채우면, 네 글자든 세 글자든 길이에 맞춰 마지막 글자만 정확히 잘려 나간다.
LENGTH는 엑셀에 없는 함수이고, VALUE는 문자열을 숫자로 바꾸는 함수라 MID의 글자 수 인수로 쓰면 오류가 난다. TRIM은 불필요한 공백만 없애 주므로 잘라 낼 개수를 만들어 내지 못한다.
| A | B | |
|---|---|---|
| 1 | 상공 서버 판매 현황 | |
| 2 | 판매처 | 기종 |
| 3 | 상공 | 2.7 |
| 4 | 전주 | 2.77 |
| 5 | 진주 | 2.85 |
| 6 | 광주 | 2.8 |
| 7 | 군산 | 2.7 |
| 8 | 대전 | 2.77 |
| 9 | 부산 | 2.85 |
| 10 | 원주 | 2.8 |
| 11 | 강릉 | 2.8 |
| 12 | 태백 | 2.8 |
| 13 | 가장 많이 판매한 기종 | 2.8 |
[B3:B12]에 적힌 기종 값은 2.7, 2.77, 2.85, 2.8, 2.7, 2.77, 2.85, 2.8, 2.8, 2.8이다. 2.8이 네 번으로 가장 많고 2.7·2.77·2.85는 각각 두 번씩이므로, 가장 많이 판매한 기종은 2.8이며 이는 시트의 [B13]에 표시된 값과 같다.
이처럼 자료에서 가장 자주 나타나는 값(최빈값)을 구하는 함수가 MODE이므로 [B13]에는 =MODE(B3:B12) 를 입력해야 한다.
STDEV는 표본의 표준편차를 구하고, COUNTA는 비어 있지 않은 셀의 개수를 세므로 둘 다 기종 값을 돌려주지 못한다. COUNTIF는 조건에 맞는 셀의 개수를 세는 함수여서 범위만 지정하면 조건 인수가 빠져 오류가 난다.
피벗 테이블의 데이터 영역에 표시되는 값은 원본 데이터를 요약·집계한 결과이므로, 사용자가 그 값의 일부를 직접 삭제하거나 임의로 추가할 수 없다.
많은 데이터를 요약·분석해 피벗 차트와 함께 작성할 수 있는 점, 데이터베이스·외부 데이터·다중 통합 범위 등을 원본으로 사용할 수 있는 점, 원본 데이터가 바뀌면 새로 고침을 통해 피벗 테이블 데이터도 갱신되도록 할 수 있는 점은 모두 옳은 설명이다.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rngCell As Range
If (가) Then
For (나)
If (특정조건) Then
…….
Exit For
End If
Next rngCell
End If
End Sub제시된 코드는 Worksheet_SelectionChange 이벤트 프로시저로, 선택한 셀이 B열일 때만 '대분류' 이름 영역의 셀을 하나씩 훑으면서 특정 조건을 만나면 반복을 빠져나가는 구조다.
(가)에는 선택된 셀이 B열인지 판단하는 조건이 들어간다. ActiveCell.Column 은 열을 숫자로 돌려주므로 B열은 2와 비교해야 한다. "B" 같은 문자와 비교하거나 Columns처럼 복수형 속성을 쓰면 원하는 판단이 되지 않고, 행 번호를 뜻하는 Row로 비교하는 것도 문제의 뜻과 다르다.
(나)는 아래쪽의 Next rngCell 과 짝을 이루는 반복문이므로 For Each … In … 형식이어야 한다. VBA에서 정의된 이름을 범위 개체로 참조할 때는 대괄호를 써서 [대분류] 로 적으므로 Each rngCell In [대분류] 가 들어간다. 이름을 큰따옴표 문자열이나 소괄호로 적으면 범위 개체가 되지 않으며, All 은 VBA 반복문에 없는 키워드다.
'월요일'과 같은 요일 문자열은 엑셀에 등록된 자동 채우기 목록에 포함되어 있으므로, 첫 셀에 입력한 뒤 채우기 핸들을 드래그하면 월요일부터 일요일까지 순서대로 자동 입력된다.
채우기 핸들을 <Ctrl> 키를 누른 채 드래그하면 오히려 값이 증가하지 않고 같은 값이 복사되며, 복사·붙여넣기 방식이나 두 값만 넣고 복사하는 방법으로는 요일 순서를 자동으로 만들어낼 수 없다.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 대여ID | 고객코드 | 고객명 | 장난감ID |
| 2 | 20008 | M005 | 박미소 | 05ED0003 |
| 3 | 30005 | G001 | 송광석 | 11BL0003 |
| 4 | 20009 | G007 | 고연실 | 05ED0003 |
| 5 | 20005 | M003 | 전미나 | 05ED0003 |
| 6 | 20002 | N007 | 임철수 | 06ED0004 |
| 7 | 10006 | G007 | 고연실 | 07SP0002 |
| 8 | ||||
| 9 | ||||
| 10 | 적립포인트 | 2700 | 2700 | 5400 |
시트에는 [A1:D7]에 대여ID·고객코드·고객명·장난감ID 자료가 빈틈없이 입력되어 있고, 8행과 9행은 완전히 비어 있으며 10행에 '적립포인트'와 2700·2700·5400이 따로 떨어져 입력되어 있다.
Ctrl+* 은 셀 포인터가 놓인 자리를 기준으로 빈 행과 빈 열로 둘러싸인 현재 영역 전체를 한 번에 선택하는 바로 가기 키다. [A1]에서 누르면 위쪽과 왼쪽은 시트 경계, 오른쪽은 D열 다음이 비어 있고, 아래쪽은 비어 있는 8행에서 영역이 끊기므로 선택 범위는 [A1:D7] 이 된다.
8·9행이 비어 있는 탓에 10행의 적립포인트 자료는 별개의 영역으로 취급되어 함께 선택되지 않으므로 A1:D10 이 되지 않으며, 한 셀이나 첫 행만 선택되는 것도 아니다.
레이블은 값을 입력받는 컨트롤이 아니라 단순히 문자열을 표시하는 용도이므로 포커스를 받을 수 없고, 그 결과 탭 순서에서 제외된다.
언바운드 개체 틀, 명령 단추, 토글 단추는 모두 포커스를 받아 값을 선택하거나 조작할 수 있는 컨트롤이므로 탭 순서에 포함된다.
기본 폼과 하위 폼을 연결할 필드가 두 개 이상일 경우에는 필드들을 세미콜론(;)으로 구분하여 지정하며, 콤마(,)로 구분하지 않는다.
폼이 연결되면 하위 폼에는 기본 폼과 연관된 레코드만 표시되도록 동기화되는 점, 연결할 필드의 데이터 형식이 같거나 호환되어야 하는 점, '하위 폼 필드 연결기' 대화상자에서 연결 필드를 지정할 수 있는 점은 모두 옳은 설명이다.
그룹 머리글/바닥글과 같은 그룹화 기능은 주로 보고서에서 제공되는 기능으로, 폼에서는 그룹 머리글을 통한 그룹화가 지원되지 않는다.
특정 필드 값을 기준으로 레코드를 묶어 표시하는 것이 그룹화라는 점, 그룹별 레코드 개수를 Count 함수로 표시할 수 있는 점, 그룹 속성에서 그룹 간격을 지정할 수 있는 점은 모두 옳은 설명이다.
SELECT 성명, (국어+수학) / 2 AS [평균] FROM 1학기;
제시된 SQL문은 '1학기' 테이블에서 두 가지 항목만 조회한다. 하나는 필드 성명 그 자체이고, 다른 하나는 국어와 수학을 더해 2로 나눈 계산 필드다.
계산식으로 만들어진 열에는 원래 필드 이름이 없으므로, AS 뒤에 적은 별칭이 결과에 나타나는 이름이 된다. 여기서는 대괄호로 묶은 [평균] 이 지정되어 있으므로 그 열은 평균이라는 이름으로 표시된다.
따라서 실행 결과에 보이는 필드 이름은 성명과 평균 두 개다. 국어와 수학은 계산에 쓰였을 뿐 따로 표시되지 않으며, 별칭을 지정했으므로 계산식 자체가 열 이름으로 나오지도 않는다.
[일반] 탭
| 필드 크기 | 정수(Long) |
| 형식 | 표준 |
| 소수 자릿수 | 0 |
| 입력 마스크 | |
| 캡션 | 가격 |
| 기본값 | |
| 유효성 검사 규칙 | |
| 유효성 검사 텍스트 | |
| 필수 | 예 |
| 인덱스 | 아니요 |
| 스마트 태그 |
제시된 속성 시트를 보면 이 필드는 필드 크기 정수(Long), 형식 표준, 소수 자릿수 0, 캡션 가격, 필수 예, 인덱스 아니요로 설정되어 있습니다.
필드 크기가 정수(Long)인 숫자 필드는 소수점 이하를 저장할 수 없어, 23.7을 입력하면 소수 첫째 자리에서 반올림되어 24로 기록됩니다. 소수 이하를 버려 23이 된다는 설명은 옳지 않습니다.
나머지는 설정과 일치합니다. 형식이 표준이면 1000 단위마다 쉼표가 붙어 12345가 12,345로 표시되고, 필수가 '예'이므로 값을 비워 둘 수 없으며, 캡션이 지정되면 데이터시트 보기의 열 머리글에 필드 이름 대신 캡션인 가격이 표시됩니다.
필드 값이 특정 문자로 시작하는 패턴을 지정할 때는 Like 연산자와 임의의 길이의 문자열을 뜻하는 만능 문자 *를 함께 사용한다. 따라서 'T'로 시작하는 값만 허용하려면 Like "T*" 형태로 규칙을 작성한다.
Between 연산자는 Between A And B 형태로 사용해야 하며, 그 범위는 A와 B를 포함하는 이상~이하 구간이다. And 대신 in을 쓰는 구문은 올바르지 않고, 범위 해석도 28에서 40까지(28, 40 포함)이지 29에서 39 사이(28, 40 제외)가 아니다.
부서 필드 값이 '영업부'인 레코드를 찾는 조건, 날짜 리터럴을 #으로 감싼 조건, 입사년도가 특정 값과 같은 레코드를 찾는 조건은 모두 WHERE 절의 올바른 사용 예이다.
입력 마스크 LA09#의 각 자리는 앞에서부터 L=반드시 문자 하나, A=반드시 문자 또는 숫자 하나, 0=반드시 숫자 하나, 9=숫자 하나(선택), #=숫자나 공백·부호(선택)를 의미한다.
제시된 값 중 'A상345'는 A(문자)-상(문자)-3(숫자)-4(숫자)-5(숫자) 순이어서 다섯 자리가 모두 규칙에 들어맞는다. 반면 '12345'는 첫 자리에 문자가 아닌 숫자가 왔고, 'A1BCD'는 반드시 숫자여야 하는 세 번째 자리에 문자가 왔으며, 'A123A'는 숫자 자리인 마지막 자리에 문자가 와서 모두 마스크에 어긋난다.
하위 쿼리가 반환하는 값이 하나뿐일 때 기본 쿼리에서 그 값과 비교하는 데 쓰는 것은 =, <, > 같은 비교 연산자이며, ON 연산자는 조인(Join) 조건을 지정할 때 쓰는 것이지 하위 쿼리와의 비교에 쓰이지 않는다.
IN 조건부로 하위 쿼리의 일부 레코드와 값이 같은 레코드를 찾을 수 있는 점, SELECT 문의 필드 목록·WHERE·HAVING 절에서 식 대신 하위 쿼리를 쓸 수 있는 점, ALL 조건부로 하위 쿼리 결과 전체와 비교를 만족하는 레코드를 찾을 수 있는 점은 모두 옳은 설명이다.
크로스탭 보고서에서 행 머리글과 열 머리글에 쓰일 레이블은 본문이 아니라 그룹 머리글(및 페이지 머리글) 영역에 배치된다. 본문에는 그룹별 세부 데이터 값이 표시된다.
여러 열로 구성되어 열마다 그룹의 머리글/바닥글, 세부 구역 등이 표시되는 점, 크로스탭 쿼리를 레코드 원본으로 사용하는 점, 가로·세로로 그룹화해 합계·개수·평균 등을 계산하는 점은 모두 옳은 설명이다.
=Format(Time(), "long time")
입력란의 식은 =Format(Time(), "long time")입니다. Time() 함수는 날짜를 제외한 현재 시각만 반환하므로 결과에 날짜는 나타나지 않습니다.
Format 함수의 "long time"(긴 시간) 형식은 시각을 오전/오후 표시와 시:분:초까지 모두 보여 주는 형식입니다. 따라서 현재 시각이 23시 22분 33초라면 오후 11:22:33으로 출력됩니다.
참고로 "medium time"은 오전/오후와 시:분까지만 표시해 초가 빠지고, "short time"은 오전/오후 표시 없이 24시간제의 시:분만 표시하므로 두 형식 모두 이 식의 결과가 될 수 없습니다.
회원 : 테이블
| 회원번호 | 사원번호 | 이름 |
|---|---|---|
| M101 | E101 | 홍길동 |
| M102 | E104 | 강감찬 |
| M105 | E107 | 일이삼 |
| 사원번호 | 이름 | 부서 |
|---|---|---|
| E101 | 홍길동 | 관리부 |
| E104 | 강감찬 | 총무부 |
| E105 | 유황제 | 영업부 |
SELECT 회원.*, 사원.* FROM 회원
INNER JOIN
사원 ON 회원.사원번호 = 사원.사원번호;




질의문은 INNER JOIN ... ON 회원.사원번호 = 사원.사원번호이므로, 두 테이블에서 사원번호가 서로 일치하는 행만 결과에 나타납니다.
회원 테이블의 사원번호는 E101, E104, E107이고 사원 테이블의 사원번호는 E101, E104, E105입니다. 양쪽에 모두 있는 값은 E101과 E104뿐이므로 결과는 M101 / E101 / 홍길동 / E101 / 홍길동 / 관리부와 M102 / E104 / 강감찬 / E104 / 강감찬 / 총무부 두 행이 됩니다.
회원 쪽에만 있는 E107(일이삼)이나 사원 쪽에만 있는 E105(유황제)까지 함께 표시된 결과는 한쪽 테이블의 레코드를 모두 포함하는 외부 조인의 결과이므로 이 질의의 결과가 아닙니다.
도메인(Domain)은 하나의 속성(열)이 가질 수 있는 값의 범위를 의미하는 개념이며, 튜플이 가질 수 있는 값의 범위를 뜻하는 것이 아니다.
튜플이 속성들의 모임으로 구성된다는 점, 속성이 데이터의 가장 작은 논리적 단위라는 점, 속성의 수를 차수(Degree), 튜플의 수를 기수(Cardinality)라고 부르는 점은 모두 옳은 설명이다.
관계 설정 창에서 '관련 필드 모두 업데이트'(계단식 업데이트) 옵션을 선택하면, 기본 키 값이 변경될 때 그 값을 참조하는 외래 키 값도 함께 자동으로 갱신된다. 즉 이 옵션이 선택되어 있어도 기본 키 값 자체는 수정할 수 있다.
기본 키는 전체 레코드에서 값이 중복되지 않고 유일해야 하는 점, 기본 키 필드에는 반드시 값을 입력해야 하는 점, 테이블에 기본 키 필드가 반드시 있어야 하는 것은 아니라는 점은 모두 기본 키의 올바른 특성이다.
누적 합계 속성을 '모두'로 설정하면 그룹 구분과 관계없이 전체 레코드에 걸쳐 값이 계속 누적되며, 그룹이 바뀔 때마다 순번이 다시 시작되는 동작은 누적 합계를 '그룹'으로 설정했을 때의 특징이다.
컨트롤 원본으로 바운드된 필드의 값을 누적해 표시하는 점, 누적 합계를 '그룹'으로 설정하면 그룹 내에서 값이 누계되는 점, '모두'로 설정하면 전체 누계가 계산되는 점은 모두 옳은 설명이다.
정규화(Normalization)는 릴레이션 사이의 종속성을 분석해 이상 현상을 제거하는 논리적 설계 단계에서 수행되는 작업이며, 물리적 설계 단계의 작업이 아니다.
이상 현상이 발생하지 않도록 하는 목적을 가진 점, 제1정규형부터 제5정규형까지 존재하는 점, 속성들 사이의 종속성 개념에 기반해 종속성을 제거하는 과정이라는 점은 모두 옳은 설명이다.
레코드 원본에 포함되지 않은 테이블의 필드라도 DLookup 등의 함수를 이용한 식으로 컨트롤 원본을 설정하면 그 값을 폼에 표시할 수 있다.
SQL 문의 실행 결과를 표시하려면 해당 SQL문을 레코드 원본으로 설정해야 하는 점, 필드 값을 표시하려면 그 필드에 바운드되는 컨트롤이 필요한 점, 컨트롤 원본을 식으로 설정한 컨트롤에는 값을 직접 입력할 수 없는 점은 모두 옳은 설명이다.
Microsoft Access 안에서 Excel, Word, PowerPoint 같은 Windows 기반 또는 MS-DOS 기반 응용 프로그램을 실행하는 매크로 함수는 RunApp이며, RunSQL은 SQL 문(실행 쿼리)을 실행하는 함수이다.
ApplyFilter로 필터·쿼리·SQL WHERE 절을 적용해 레코드를 제한·정렬할 수 있는 점, FindRecord로 조건에 맞는 첫 레코드를 찾을 수 있는 점, Requery로 컨트롤이나 개체 원본을 다시 쿼리해 데이터를 갱신할 수 있는 점은 모두 옳은 설명이다.
확인란은 각 항목을 독립적으로 선택할 수 있고, 목록 상자는 설정에 따라 목록에서 여러 항목을 동시에 선택할 수 있으므로, 이 둘의 조합이 하나 이상의 값을 선택할 수 있는 컨트롤 구성에 해당한다.
옵션 단추와 콤보 상자는 여러 항목 중 하나만 선택하도록 하는 컨트롤이므로 다중 선택에는 적합하지 않다.
Private Sub ( )
MsgBox "달라진 모습을 확인하셨나요?"
End Sub
빈칸에는 이벤트 프로시저의 이름이 들어가며, 조건은 폼의 크기가 바뀔 때와 폼이 처음 표시될 때 모두 실행되어야 한다는 것입니다.
Resize 이벤트는 폼의 크기가 변경될 때 발생할 뿐 아니라, 폼을 열 때 Open → Load → Resize → Activate 순으로 이벤트가 이어지므로 폼이 처음 화면에 표시되는 순간에도 한 번 발생합니다. 따라서 두 조건을 동시에 만족합니다.
폼이 열릴 때만 발생하는 Open이나 Load, 폼 개체가 만들어질 때 한 번만 발생하는 Initialize는 이후 사용자가 폼의 크기를 조절해도 다시 실행되지 않으므로 조건을 만족하지 못합니다.