[컴퓨터활용능력 1급 필기] 15년 3회차 시험지 PDF 다운로드
15년 3회차
픽셀(점)로 이미지를 표현하며 래스터(비트맵) 이미지라고 불리는 것은 비트맵 이미지의 특징이다. 벡터 이미지는 점과 점을 잇는 선과 도형의 수학적 정보로 이미지를 표현하므로, 픽셀로 표현되는 래스터 이미지라는 설명은 옳지 않다.
확대해도 화질 손상이 없는 것, 직선이나 곡선으로 이미지를 구성하는 것, AI·WMF 등의 파일 형식을 사용하는 것은 모두 벡터 이미지에 대한 맞는 설명이다.
USB와 같은 이동식(외장) 드라이브에서 삭제한 파일은 휴지통을 거치지 않고 곧바로 영구 삭제되므로, 휴지통의 복원 메뉴로 복원할 수 없다.
명령 프롬프트에서 삭제한 파일이 휴지통과 무관하게 영구 삭제되는 것, 휴지통 크기를 드라이브마다 다르게 지정할 수 있는 것, 휴지통 속성 창에서 최대 크기를 변경할 수 있는 것은 모두 맞는 설명이다.
전자음향장치나 디지털 악기 간의 통신규약으로 음악의 연주 정보 등을 저장하는 데이터 형식은 MIDI이다. 실제 음(소리)이 아니라 연주 정보(음의 높이·길이·세기 등)를 기호화하여 저장하므로 파일 용량이 작은 것이 특징이다.
WAV는 실제 소리를 아날로그-디지털 변환하여 저장하는 형식이고, RA/RM과 MP3는 각각 스트리밍 및 압축 오디오 형식이라는 점에서 MIDI와 차이가 있다.
프로그램을 작성하는 데 사용되는 프로그램 언어, 규약(protocol), 해법(algorithm) 자체는 저작권법상 보호 대상에서 제외된다. 이는 아이디어의 영역에 해당하기 때문이며, 저작권은 이를 표현한 구체적인 프로그램 코드에 대해 인정된다.
저작 재산권이 저작자 생존 기간과 사후 일정 기간(50년 또는 70년) 동안 존속하는 것, 저작권이 저작자의 권리 보호를 목적으로 하는 것, 비영리 목적의 공연·방송에 대해 저작 재산권이 제한될 수 있는 것은 모두 맞는 설명이다.
POP3는 메일 서버에 도착한 이메일을 사용자의 컴퓨터로 가져올 수 있도록 메일 서버가 제공하는 프로토콜이다.
이메일을 다른 사람의 계정으로 전송하는 것은 SMTP의 역할이고, 멀티미디어 전자우편의 표준 프로토콜은 MIME이며, 웹 브라우저가 지원하지 않는 멀티미디어 파일을 실행하는 것은 플러그인의 역할이므로 POP3와는 다르다.
분산 서비스 거부 공격(DDoS)은 여러 대의 컴퓨터를 이용해 특정 시스템에 다량의 트래픽을 집중시켜 정상적인 서비스를 마비시키는 공격이다. 이는 마이크로소프트사의 MS-DOS 운영체제와는 무관하므로, 해당 설명은 옳지 않다.
피싱이 가짜 웹 사이트로 유인해 정보를 빼내는 행위인 것, 스푸핑이 검증된 사람인 것처럼 데이터를 변조해 접속을 시도하는 행위인 것, 키로거가 키 입력을 캐치해 ID·암호를 알아내는 행위인 것은 모두 맞는 설명이다.
휴대폰을 모뎀처럼 활용하여 다른 IT 기기를 휴대폰에 연결해 무선 인터넷을 사용하게 하는 기능을 테더링(Tethering)이라고 한다.
와이파이는 무선랜 접속 기술, 블루투스는 근거리 무선 통신 기술, 와이브로는 이동 중 초고속 인터넷 서비스를 가리키므로 휴대폰을 모뎀으로 활용하는 기능과는 구분된다.
LAN은 전송 거리가 짧고 고속 전송이 가능하며, 오히려 WAN에 비해 에러 발생률이 낮은 통신망이다. WAN에 비해 에러 발생률이 높다는 설명은 옳지 않다.
VAN이 기간 통신망 회선을 빌려 부가가치를 더해 판매하는 통신망인 것, B-ISDN이 광대역에서 데이터·음성·고해상도 동영상 등을 디지털 통신망으로 제공하는 것, WLL이 전화국과 가입자 사이를 무선으로 구성하는 통신망인 것은 모두 맞는 설명이다.
WCDMA는 3세대(3G) 이동통신 표준에 해당하며, 4세대 이동통신 표준으로는 LTE-Advanced, WiBro-Evolution 등이 있다. 따라서 4세대 표준에 WCDMA가 포함된다는 설명은 옳지 않다.
하나의 단말기로 위성망·무선랜·인터넷을 모두 사용할 수 있는 것, IMT-2000(3세대)에 이어지는 서비스라는 것, 대용량 데이터를 고속으로 처리하고 3차원 영상 통화가 가능하다는 것은 모두 4세대 이동통신에 대한 맞는 설명이다.
운영체제의 목적은 처리 능력의 향상, 응답 시간의 단축(최소화), 사용 가능도의 향상, 신뢰도의 향상이다. 응답 시간을 최대화한다는 설명은 목적과 반대되므로 옳지 않다.
사용자에게 편리함을 제공하고 시스템 생산성을 높이는 역할을 하는 것, 프로세스·기억장치·주변장치·파일 관리 등을 주요 기능으로 하는 것, 제어 프로그램과 처리 프로그램으로 구성되는 것은 모두 맞는 설명이다.
웹 브라우저는 사용자가 인터넷 정보를 검색·활용하기 위해 사용하는 응용 소프트웨어이므로 시스템 소프트웨어에 해당하지 않는다.
부트 로더, 장치 드라이버, C 런타임 라이브러리는 모두 컴퓨터 시스템의 동작을 지원하는 시스템 소프트웨어에 해당한다.
RAM은 전원이 공급되는 동안에만 데이터가 유지되는 휘발성 메모리로, 이 중 DRAM은 시간이 지나면 전하가 빠져나가므로 일정 주기마다 재충전(Refresh)을 해 주어야 하며, 저렴하고 집적도가 높아 주기억장치(주메모리)로 널리 사용된다.
펌웨어를 저장하거나 전원이 꺼져도 내용이 유지되는 비휘발성·읽기전용 메모리, 부팅 시 실행되는 자가진단·입출력 프로그램을 담고 있는 것은 RAM이 아니라 ROM의 특징이다.
SSD는 반도체(플래시 메모리) 칩에 데이터를 저장하는 저장장치로, 기계적으로 움직이는 부품이 없어 발열·소음·전력 소모가 적고 소형화·경량화가 가능하며 읽기·쓰기 속도가 빠르다.
또한 움직이는 부품이 없으므로 외부 충격에 오히려 강한 것이 SSD의 장점이다. 모터와 헤드가 회전·이동하며 동작하기 때문에 충격에 매우 약한 것은 하드디스크(HDD) 쪽의 특성이므로, 충격에 매우 약하다는 설명은 SSD의 특징으로 옳지 않다.
하드디스크로 부팅되지 않을 때 USB나 CD-ROM으로 부팅해 손상 여부를 점검한 뒤 운영체제를 다시 설치하는 방법, 모니터가 보이지 않을 때 전원·연결 상태를 점검하는 방법, 프린터가 작동하지 않을 때 연결 상태와 드라이버를 확인·재설치하는 방법은 모두 실제로 적용되는 적절한 해결책이다.
반면 컴퓨터 속도가 느려진 경우에는 불필요한 프로그램 정리, 디스크 조각 모음, 임시 파일 삭제 등을 먼저 시도하는 것이 일반적인 해결 방법이며, 곧바로 메인보드나 하드디스크를 교체하는 것은 지나치게 과도한 조치로 적절한 해결 방법이라 보기 어렵다.
USB 방식의 로컬 프린터는 컴퓨터에 연결하면 Windows가 자동으로 인식해 드라이버를 설치하고, 블루투스 프린터는 어댑터를 연결·활성화한 뒤 프린터 추가 마법사를 실행해 설치한다. 홈 그룹으로 설정된 네트워크에서는 프린터가 자동으로 공유되며, 프린터가 연결된 컴퓨터의 전원이 켜져 있어야 다른 컴퓨터에서 사용할 수 있다.
스풀링은 인쇄 데이터를 임시로 저장했다가 프린터로 순차 전달하는 기능으로, 어떤 프린터를 기본 프린터로 지정하는 작업과는 관계가 없다. 기본 프린터 설정에 스풀링 설정이 반드시 필요하다는 설명은 옳지 않다.
Windows 원격 지원은 Windows 운영체제를 사용하는 컴퓨터끼리 인터넷이나 네트워크로 연결해 화면을 공유하고 문제 해결을 돕는 기능이다. 따라서 사용하는 운영체제의 종류와 상관없이 연결할 수 있다는 설명은 옳지 않다.
연결이 이루어지면 실시간 채팅과 화면 공유가 가능하고, 사용자가 허락하면 상대방이 원격으로 컴퓨터를 직접 조작할 수도 있다. 모든 세션은 암호화되고 암호로 보호되어 허가받은 사람만 접속할 수 있으며, 방화벽을 사용 중이라면 원격 지원을 위해 포트를 임시로 열어야 한다.
파일이나 폴더를 처음 암호화하면 암호화 인증서가 자동으로 생성되고, 이 인증서는 암호화 키와 항상 연결되어 있다. 다른 사용자가 해당 파일에 접근하려면 자신의 EFS 인증서를 미리 파일에 추가해 두어야 한다.
그러나 EFS 암호화는 NTFS 파일 시스템의 기능이므로, NTFS를 사용하지 않는 컴퓨터나 드라이브로 파일을 복사하면 암호화가 유지되지 않고 일반 파일로 풀린다. 암호가 그대로 유지된다는 설명은 옳지 않다.
시스템 복원은 레지스트리, 설치된 프로그램, 시스템 설정 등을 이전 시점(복원 지점)으로 되돌리는 기능으로, 시스템 보호 기능을 통해 자동으로 복원 지점을 생성·저장하며, 전자 메일이나 문서·사진 같은 개인 파일에는 영향을 주지 않는다.
다만 시스템 복원은 휴지통에서 삭제된 파일을 복원하는 기능과는 무관하다. 삭제된 파일이나 폴더가 휴지통에서 원래 위치로 복원된다는 설명은 옳지 않다.
[제어판]-[마우스] 설정에서는 입력할 때 포인터 숨기기, 포인터 자국(트레일)의 길이 조정, 포인터 그림자 사용 등을 설정할 수 있다.
포인터의 위치를 표시하는 기능은 <Ctrl>키를 눌렀을 때 포인터 주위에 동심원을 표시하는 방식으로 제공되며, <Alt>키로 위치를 표시한다는 설명은 옳지 않다.
바탕 화면 빈 곳에서 오른쪽 버튼을 눌러 [새로 만들기]-[바로 가기]를 선택하거나, 파일을 오른쪽 버튼으로 드래그해 [여기에 바로 가기 만들기]를 선택하는 방법, 파일을 복사한 뒤 바탕 화면에서 [바로 가기 붙여넣기]를 선택하는 방법은 모두 바로 가기 아이콘을 만드는 실제 방법이다.
탐색기에서 파일을 <Ctrl>+<Shift>키를 누른 채 드래그해야 바로 가기가 만들어지며, <Ctrl>키만 누른 채 드래그하면 해당 위치로 파일이 복사된다. 따라서 <Ctrl>키만으로 바로 가기를 만든다는 설명은 옳지 않다.
[기타 원본]-[Microsoft Query]를 이용하면 여러 테이블을 조인한 결과를 워크시트로 가져올 수 있고, [기존 연결]로 이전에 작성해 둔 쿼리 파일(.dqy)의 실행 결과를 가져올 수 있으며, [Access]로 가져온 데이터는 원본이 바뀌면 워크시트에도 반영되도록 설정할 수 있다.
[웹]을 이용한 가져오기는 웹 페이지에서 사용자가 선택한 특정 표나 영역만 선택적으로 가져오는 기능이므로, 웹 페이지의 모든 데이터를 원본 그대로 가져온다는 설명은 옳지 않다.
)를 선택하거나 [Ctrl]+[Z]키를 누른다.
)를 클릭하여 여러 작업을 한 번에 취소할 수도 있다.[Ctrl]+[D]는 선택한 범위에서 맨 위쪽 셀의 내용과 서식을 아래쪽 셀들로 채우는 단축키다. 취소한 작업을 원래대로 되돌리는 다시 실행은 [Ctrl]+[Y]이거나 빠른 실행 도구 모음의 다시 실행 단추를 이용한다.
실행 취소는 [Ctrl]+[Z]이며, 빠른 실행 도구 모음의 [실행 취소] 단추 옆 화살표를 눌러 작업 목록을 펼치면 여러 단계의 작업을 한 번에 되돌릴 수도 있다.
다만 시트 이름 변경, 시트 위치 이동, 시트 복사처럼 시트 자체를 다루는 작업은 실행 취소 대상에 들어가지 않아 되돌릴 수 없다는 점도 함께 알아두어야 한다.
통합 문서 내에서 ( ㉠ )키는 다음 워크시트로 이동, ( ㉡ )키는 이전 워크시트로 이동할 때 사용한다.
통합 문서 안에서 시트 탭을 옮겨 다닐 때는 [Ctrl]과 Page Down / Page Up을 함께 누른다. [Ctrl]+[Page Down]은 다음 워크시트로, [Ctrl]+[Page Up]은 이전 워크시트로 활성 시트를 옮긴다.
[Page Down]/[Page Up]만 누르면 같은 시트 안에서 한 화면씩 아래위로 스크롤될 뿐이고, 여기에 [Shift]를 더하면 시트 이동이 아니라 화면 단위로 선택 범위가 확장된다.
[Ctrl]+방향키는 데이터가 입력된 영역의 끝으로 셀 포인터를 옮기는 기능, [Shift]+방향키는 셀 단위로 선택 영역을 넓히는 기능이므로 워크시트 사이의 이동과는 관계가 없다.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | 자산코드 | L47C | S22C | N71E | S34G |
| 2 | 비품명 | 디스크 | 디스크 | 디스크 | 모니터 |
| 3 | 내용연수 | 4 | 3 | 3 | 5 |
| 4 | 경과연수 | 2 | 1 | 2 | 3 |
| 5 | 취득원가 | 550,000 | 66,000 | 132,000 | 33,000 |
조건부 서식의 수식은 선택 영역의 첫 셀(A1)을 기준으로 작성하고, 나머지 셀에는 상대 참조 규칙에 따라 자동으로 조정되어 적용된다. 따라서 열마다 결과가 달라지게 하려면 열은 상대 참조로 두고 행만 절대 참조(A$1)로 고정해야 한다.
COLUMN 함수는 참조의 열 번호를 돌려준다. A열은 1, B열은 2, C열은 3, D열은 4, E열은 5이므로 =MOD(COLUMN(A$1),2)=0은 열 번호가 짝수인 B열(2)과 D열(4)에서만 참이 되어 자산코드부터 취득원가까지 그 두 열에만 배경색이 적용된다.
반면 COLUMNS 함수는 참조에 들어 있는 열의 개수를 세는 함수라서 A1이라는 한 셀을 가리키면 어느 셀에서 계산해도 항상 1이 나와 조건이 성립하지 않는다. 또 $A1처럼 열을 절대 참조로 고정하면 모든 셀이 A열(열 번호 1)을 기준으로 계산되어 나머지가 늘 1이 되므로 원하는 결과를 얻을 수 없다.
| 서식 코드 | 데이터 입력 | 표시 | |
|---|---|---|---|
| ㉠ | # ???/??? | 3.75 | 3 3/4 |
| ㉡ | 0.00#, | -6789 | -0.007 |
| ㉢ | *-#,##0 | 6789 | *---6,789 |
| ㉣ | ▲#;▼#;0 | -6789 | ▼6789 |
사용자 지정 표시 형식에서 별표(*)는 그 바로 뒤에 오는 문자를 셀 너비만큼 반복해 채우라는 지시자다. 따라서 *-#,##0 서식을 지정하고 6789를 입력하면 별표 자체는 화면에 나타나지 않고, 셀에서 남는 자리가 하이픈으로 빈틈없이 채워진 뒤 오른쪽에 6,789가 표시된다. 표시 결과에 별표가 그대로 찍혀 있는 것은 옳지 않다.
# ???/???는 정수부와 분수부를 나누어 나타내는 대분수 서식이다. 물음표는 자릿수를 맞추기 위한 자리 표시자이므로 3.75는 정수 3과 분수 3/4으로 나뉘어 3 3/4 형태로 표시된다.
세미콜론으로 구역을 나눈 서식은 양수;음수;0;텍스트 순으로 적용된다. ▲#;▼#;0에서 -6789는 두 번째 구역인 ▼#이 적용되어 음수 부호 대신 ▼가 붙은 ▼6789로 표시된다.
한편 0.00#처럼 자리 표시자 뒤에 붙인 쉼표는 자릿수 구분이 아니라 쉼표 하나당 값을 1000으로 나눠 천 단위로 줄여 표시하라는 뜻이다.
연속으로 여러 시트가 선택된 상태에서 <Shift>+<F11>을 누르면 선택된 시트 수만큼 새 워크시트가 삽입되고, 시트를 숨겨도 다른 시트나 통합 문서에서 계속 참조할 수 있다. [페이지 레이아웃] 탭의 '배경' 명령으로 지정한 시트 배경 이미지는 화면에만 표시될 뿐 인쇄되지는 않는다.
워크시트의 이름 변경을 막는 기능은 시트 자체의 잠금이 아니라 통합 문서의 구조를 보호하는 [통합 문서 보호] 설정을 통해 이루어지며, [시트 보호] 대화상자의 '잠긴 셀의 내용과 워크시트 보호'는 셀 내용 편집을 막는 기능이다. 따라서 시트 이름 변경 방지를 이 옵션으로 설명한 것은 옳지 않다.
Range("A1:D10").Select, Range("판매량").Select, Range(Cells(1,1), Cells(5,3)).Select는 모두 지정한 영역을 올바르게 선택하는 코드이다.
반면 Range("A1", "C5")처럼 두 개의 인수를 지정하면 [A1] 셀과 [C5] 셀만 각각 선택되는 것이 아니라, 두 셀을 대각선 모서리로 하는 사각형 범위 [A1:C5] 전체가 선택된다. 따라서 [A1] 셀과 [C5] 셀만 선택된다는 설명은 옳지 않다.
Sub ODD( )
Count = 1
Total = 0
Do ( ㉠ )
Total = Total + Count
( ㉡ )
Loop
코드는 Count = 1, Total = 0으로 시작해 반복문 안에서 Total = Total + Count로 Count 값을 계속 누적한다. 1부터 100까지의 홀수만 더하려면 Count가 1, 3, 5, …로 커져야 하므로 두 번째 괄호에는 Count = Count + 2가 들어가야 한다. 여기에 1을 더하면 짝수까지 함께 더해져 홀수 합이 되지 않는다.
첫 번째 괄호에는 반복 조건이 들어간다. Do While 조건은 조건이 참인 동안 반복하므로 While Count < 100으로 두면 Count가 1, 3, …, 99일 때까지 반복이 이어져 1+3+5+…+99가 누적되고, Count가 101이 되는 순간 조건이 거짓이 되어 반복이 끝난다.
반대로 Do Until 조건은 조건이 참이 될 때까지, 즉 거짓인 동안 반복한다. 그래서 Until Count < 100은 시작하자마자 1 < 100이 참이 되어 반복문이 한 번도 실행되지 않고, While Count > 100 역시 처음부터 조건이 거짓이라 실행되지 않는다.
상태 표시줄의 자동 계산 항목에는 선택 영역의 합계, 평균, 최소값, 최대값과 함께 데이터가 입력된 셀의 개수(개수), 숫자 데이터가 입력된 셀의 개수(숫자 셀 수)가 포함된다.
그러나 문자 데이터가 입력된 셀의 수만을 별도로 세어 표시하는 항목은 제공되지 않으므로, 이는 자동 계산에 해당하지 않는다.
| A | B | C | |
|---|---|---|---|
| 1 | 0 | 100 |
워크시트에는 [A1] 셀에 0, [B1] 셀에 100이 입력되어 있고 [C1] 셀은 비어 있는 상태로 선택되어 있다. 이 [C1] 셀에 =A1+B1+C1을 입력하면 수식이 들어 있는 셀 자신인 [C1]을 계산 대상에 다시 포함하게 된다.
이처럼 수식이 자기 자신이 들어 있는 셀을 직접 또는 간접적으로 참조하는 것을 순환 참조(Circular Reference)라고 한다. 결과값이 확정될 수 없으므로 엑셀은 계산을 진행하지 않고 순환 참조 경고 메시지 창을 띄운다. 경고를 닫으면 해당 셀에는 0이 표시되고 상태 표시줄에 순환 참조가 발생한 셀 주소가 나타난다.
#REF!는 참조하던 셀이나 범위가 삭제되어 참조가 무효해졌을 때, #NUM!은 함수의 인수가 잘못되었거나 결과가 표현 가능한 수 범위를 벗어났을 때 나타나는 오류로 이 상황과는 관계가 없다. 데이터 유효성 오류 메시지 역시 미리 지정해 둔 입력 제한 규칙을 위반한 값을 입력했을 때만 나타난다.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 사원 | 입사일자 | 부서 | 연봉 |
| 2 | 홍진성 | 2010-12-12 | 영업부 | 3000만원 |
| 3 | 김미영 | 1999-12-01 | 연구소 | 5000만원 |
| 4 | 한철수 | 2005-10-05 | 총무부 | 4000만원 |
| 5 | 김인수 | 2009-04-02 | 경리부 | 3600만원 |
| 6 | 장인선 | 2012-01-02 | 기획실 | 2500만원 |
| 7 | ||||
| 8 | 이름 | 김인수 | 근속년수 |
표의 A열은 사원명, B열은 입사일자이고, [B8] 셀에 찾을 이름 ‘김인수’가 입력되어 있다. 근속년수는 오늘 연도 − 입사 연도이므로 먼저 김인수의 입사일자 2009-04-02를 찾아와야 한다.
VLOOKUP(찾을값, 범위, 열 번호, 옵션)은 범위의 첫 번째 열에서 찾을값을 세로로 검색한다. 범위를 A2:B6으로 잡으면 첫 열이 사원명이므로 [B8]의 ‘김인수’를 찾아 두 번째 열인 입사일자를 반환한다. 이름처럼 정확히 일치하는 값을 찾아야 할 때는 마지막 옵션을 0(FALSE)으로 지정해야 하므로 =YEAR(TODAY())-YEAR(VLOOKUP(B8,A2:B6,2,0)) 형태가 된다.
옵션을 1(TRUE)로 두면 근사값을 찾기 때문에 첫 열이 오름차순 정렬되어 있어야 하고, 정렬되지 않은 이 표에서는 엉뚱한 사원의 값을 가져올 수 있다. HLOOKUP은 범위의 첫 번째 행에서 가로로 검색하는 함수라 사원명이 세로로 나열된 이 표에는 쓸 수 없으며, A2:D6의 첫 행은 홍진성 레코드이므로 이름 검색 자체가 성립하지 않는다.

‘성적표’ 차트는 홍길동·이대한·한민국·박미나 4명에 대해 기말고사(95, 82, 95, 95), 중간고사(85, 90, 97, 88), 출석점수(9, 8, 10, 6)를 묶은 세로 막대형이며, 차트 아래에 데이터 표가 함께 표시되어 있다.
이 데이터 표의 각 계열 이름 왼쪽에는 계열 색을 나타내는 작은 색 상자, 즉 범례 표지가 함께 표시되어 있다. 데이터 표를 ‘범례 표지 포함’ 옵션으로 넣은 상태이므로 범례 표지가 표시되지 않았다는 설명은 그림과 맞지 않는다.
세로 (값) 축 눈금은 0, 20, 40, 60, 80, 100, 120으로 매겨져 있어 주 단위는 20이고 그 사이를 나누는 보조 눈금선은 없다. 또 기말고사 계열 위에만 95·82·95·95의 데이터 레이블과 완만하게 상승하는 직선 추세선이 그려져 있어 기말고사의 변화 추세를 나타내고 있으며, 기본 세로 (값) 축 제목 ‘점수’도 회전된 형태로 표시되어 있다.
[시트] 탭에서 '메모'는 인쇄하지 않는 '(없음)' 외에 '시트 끝', '시트에 표시된 대로' 중 선택할 수 있고, '행/열 머리글'을 선택하면 워크시트의 행·열 머리글까지 함께 인쇄되며, '셀 오류 표시'는 '표시된 대로' 외에 공백, '--', '#N/A' 등으로 표시 방식을 지정할 수 있다.
'반복할 행'은 매 페이지 상단에 제목으로 인쇄할 행을 지정하는 기능이지만, 지정할 수 있는 행은 연속된 범위여야 하며 서로 떨어진 여러 행을 함께 지정할 수는 없다. 비연속 구간의 여러 행을 선택할 수 있다는 설명은 옳지 않다.
여러 워크시트가 함께 선택된 상태에서 확대/축소 배율을 바꾸면 선택된 모든 시트에 배율이 적용되고, [보기] 탭의 '선택 영역 확대/축소'는 선택한 범위가 창 전체를 채우도록 배율을 자동 조정한다. 화면 확대/축소 배율은 10%에서 400% 사이에서 지정할 수 있다.
다만 이 화면 확대/축소 배율은 화면에 보이는 크기만 조정할 뿐, [페이지 설정]에서 지정하는 인쇄용 확대/축소 배율과는 별개의 설정이므로 인쇄 시 자동으로 반영되지 않는다. 화면의 확대/축소 배율이 인쇄 설정에 반영된다는 설명은 옳지 않다.




고급 필터의 조건 범위는 같은 행에 쓴 조건끼리는 AND(그리고), 다른 행에 쓴 조건끼리는 OR(또는)로 결합된다. 또 만능 문자 ?는 임의의 한 글자, *는 임의 개수의 글자를 대신하므로 ‘이’로 시작하는 세 글자 이름은 이??로 적어야 한다. ‘이**’로 적으면 글자 수가 제한되지 않아 ‘이’로 시작하는 모든 이름이 걸린다.
따라서 첫째 조건 행에 이름 이??, TOEIC >=600, TOEIC <800을 나란히 두어 세 조건을 모두 만족시키고, 둘째 조건 행에 직급 대리와 연차 >=3을 나란히 두어 이 두 조건을 모두 만족하는 경우를 OR로 연결한 조건 지정이 옳다.
600 이상 800 미만처럼 한 필드에 범위 조건 두 개를 걸 때는 TOEIC 필드명을 두 번 나열해 같은 행에 각각 적어야 AND로 묶인다. 800 미만 조건만 아래 행으로 내려 쓰거나 직급 ‘대리’를 TOEIC 조건과 같은 행에 섞어 놓으면 조건의 결합 방식이 달라져 문제에서 요구한 추출 결과가 나오지 않는다.
[윤곽 수준 단추: 1 2 3 4]
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | 부서 | 제품명 | 상태 | 판매량 | 재고량 |
| 2 | 생산1팀 | 냉장고 | 양호 | 45 | 35 |
| 3 | 생산1팀 | 냉장고 | 양호 | 45 | 25 |
| 4 | 냉장고 요약 | 90 | 60 | ||
| 5 | 생산1팀 | 세탁기 | 양호 | 45 | 10 |
| 6 | 생산1팀 | 세탁기 | 양호 | 100 | 20 |
| 7 | 세탁기 요약 | 145 | 30 | ||
| 8 | 생산1팀 요약 | 235 | 90 | ||
| 9 | 생산2팀 | 세탁기 | 양호 | 80 | 15 |
| 10 | 생산2팀 | 세탁기 | 불량 | 45 | 8 |
| 11 | 세탁기 요약 | 125 | 23 | ||
| 12 | 생산2팀 | 전자레인지 | 양호 | 70 | 27 |
| 13 | 생산2팀 | 전자레인지 | 양호 | 100 | 60 |
| 14 | 생산2팀 | 전자레인지 | 불량 | 100 | 50 |
| 15 | 전자레인지 요약 | 270 | 137 | ||
| 16 | 생산2팀 요약 | 395 | 160 | ||
| 17 | 총합계 | 630 | 250 |
결과를 보면 요약 행이 두 종류로 겹쳐 있다. 안쪽에는 제품명별 요약(냉장고 요약 90·60, 세탁기 요약 145·30, 세탁기 요약 125·23, 전자레인지 요약 270·137)이, 그 바깥에는 부서별 요약(생산1팀 요약 235·90, 생산2팀 요약 395·160)이 있고 마지막에 총합계 630·250이 나온다. 계산된 값은 모두 판매량과 재고량의 합계이다.
부분합을 두 번 겹쳐 실행하면 먼저 실행한 부분합이 바깥쪽(상위) 그룹이 되고, ‘새로운 값으로 대치’를 해제한 채 나중에 실행한 부분합이 그 안쪽(하위) 그룹으로 끼어든다. 부서 요약이 바깥, 제품명 요약이 안쪽에 있으므로 부서를 그룹화 항목으로 먼저 합계를 구한 뒤 제품명을 그룹화 항목으로 다시 합계를 구한 것임을 알 수 있다.
요약 행이 각 그룹의 아래쪽에 위치하므로 ‘데이터 아래에 요약 표시’는 해제되지 않았고, 왼쪽 윤곽 기호는 부분합이 만들어 준 것이지 자동 윤곽으로 재설정된 것이 아니다. 또 정렬 기준이 제품명이 먼저였다면 같은 제품명이 부서와 상관없이 연달아 나와야 하는데 세탁기가 두 부서로 나뉘어 나타나고, 생산2팀 세탁기의 판매량도 80·45로 오름차순이 아니어서 그 정렬 순서 설명은 성립하지 않는다.
정렬 조건은 최대 64개까지 지정할 수 있고, 정렬 전에는 숨겨진 열이나 행을 표시해 두어야 해당 데이터도 함께 정렬 대상이 되며, 첫째 기준을 포함한 모든 정렬 기준에서 사용자 지정 목록을 정렬 기준으로 사용할 수 있다.
다만 글꼴 색이나 셀 색을 기준으로 정렬할 때는 숫자나 텍스트처럼 크기 비교로 정해지는 값이 아니므로 오름차순·내림차순에 해당하는 정해진 기본 순서가 없으며, 사용자가 직접 위/아래에 놓을 색의 순서를 지정해야 한다. 밝은 색에서 어두운 색 순으로 정렬되는 기본 순서가 있다는 설명은 옳지 않다.
| A | B | C | |
|---|---|---|---|
| 1 | 1 | 2 | 3 |
| 2 | 10 | 20 | 30 |
| 3 | 100 | 200 | 300 |
만들어야 할 데이터는 1행에 1·2·3, 2행에 10·20·30, 3행에 100·200·300이 들어가는 3행 3열의 2차원 배열이다.
배열 상수는 전체를 중괄호 { }로 묶고, 같은 행 안에서 열이 바뀔 때는 쉼표(,), 행이 바뀔 때는 세미콜론(;)으로 구분한다. 따라서 각 행의 세 값을 쉼표로 잇고 행끼리는 세미콜론으로 이어 ={1,2,3;10,20,30;100,200,300}과 같이 작성한 뒤, [A1:C3] 영역을 선택한 상태에서 Ctrl+Shift+Enter로 입력한다.
구분자를 쉼표만 쓰면 값 9개가 모두 한 행에 놓인 1행 9열 배열이 되고, 세미콜론만 쓰면 9행 1열 배열이 된다. 쉼표와 세미콜론의 역할을 바꿔 쓴 형태 역시 열 구분과 행 구분이 뒤바뀌어 원하는 3행 3열 배치가 만들어지지 않는다.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | 성명 | 소속 | 총매출액 | 소속 | 총매출액 | 평균매출액 | |
| 2 | 이민우 | 영업1부 | 8,819 | 영업1부 | 28,581 | 7,145 | |
| 3 | 차소라 | 영업2부 | 8,072 | ||||
| 4 | 진희경 | 영업3부 | 6,983 | ||||
| 5 | 장용 | 영업1부 | 7,499 | ||||
| 6 | 최병철 | 영업1부 | 7,343 | ||||
| 7 | 김철수 | 영업3부 | 4,875 | ||||
| 8 | 정진수 | 영업2부 | 5,605 | ||||
| 9 | 고희수 | 영업3부 | 8,689 | ||||
| 10 | 조민희 | 영업3부 | 7,060 | ||||
| 11 | 추소영 | 영업2부 | 6,772 | ||||
| 12 | 홍수아 | 영업3부 | 6,185 | ||||
| 13 | 이경식 | 영업1부 | 4,920 | ||||
| 14 | 유동근 | 영업2부 | 7,590 | ||||
| 15 | 이혁재 | 영업2부 | 6,437 |
※ [F2] 셀에 붙은 설명: 소속별 총매출액의 합계
[E1:E2]는 필드명 ‘소속’과 조건값 ‘영업1부’로 이루어진 조건 범위이고, 구해야 할 값은 영업1부인 이민우 8,819, 장용 7,499, 최병철 7,343, 이경식 4,920의 합계인 28,581이다.
SUMIF(조건 범위, 조건, 합계 범위)에서 조건 범위는 조건과 비교할 한 개의 열이어야 한다. 조건 범위를 A1:C15처럼 여러 열로 지정하면 성명·소속·총매출액 값을 모두 ‘영업1부’와 비교하게 되고, 합계 범위도 조건 범위의 왼쪽 위 셀을 기준으로 같은 크기만큼 확장되어 총매출액 열이 아닌 엉뚱한 영역이 더해진다. 따라서 이 형태로는 28,581을 얻을 수 없다.
반면 DSUM(데이터베이스, 필드, 조건 범위)는 필드를 열 번호 3으로 지정하든 필드명이 있는 [C1] 셀로 지정하든 모두 총매출액 열을 가리키고, 조건 범위 E1:E2가 필드명 행을 포함하고 있어 정상 동작한다. SUMIF를 쓸 때에도 소속이 들어 있는 B2:B15를 조건 범위로, 총매출액이 들어 있는 C2:C15를 합계 범위로 맞춰 지정하면 같은 결과가 나온다.
매크로 함수 중 OpenForm은 폼을 지정한 보기 형태(디자인 보기, 데이터시트 보기, 폼 보기 등)로 여는 데 사용되는 함수이다.
RunCommand는 액세스의 기본 명령을 실행하고, RunMacro는 다른 매크로를 실행하며, RunSQL은 SQL 문을 실행하는 함수로, 모두 폼을 여는 용도의 함수가 아니다.
Sum = 0
For i = 1 to 20
Select Case ( i Mod 4)
Case 0
Sum = Sum + i
Case 1, 2, 3
End Select
Next
Sum을 0으로 초기화한 뒤 i를 1부터 20까지 1씩 증가시키며 반복하는 구조이다. 반복문 안에서는 i Mod 4, 즉 i를 4로 나눈 나머지를 기준으로 Select Case가 분기한다.
나머지가 0일 때만 Sum = Sum + i가 실행되어 i가 누적되고, 나머지가 1, 2, 3인 경우에는 해당 Case 아래에 실행할 문장이 없으므로 아무 일도 하지 않는다. 결국 1부터 20까지 중 4의 배수만 더해진다.
따라서 더해지는 값은 4, 8, 12, 16, 20이고 4 + 8 + 12 + 16 + 20 = 60이므로 반복이 끝난 뒤 Sum은 60이 된다. 참고로 1부터 20까지 모두 더하면 210, 홀수만 더하면 100이 되므로 조건 분기를 잘못 읽지 않도록 주의한다.
계층형 모델은 하나의 루트 레코드에서 뻗어나가는 트리 구조를 가지고, 네트워크형 모델은 그래프 구조로 레코드 간 다대다 관계를 표현할 수 있으며, 관계형 모델은 행과 열로 구성된 테이블 간에 공통 속성을 통해 관계를 맺는 방식이다.
객체지향형 모델은 데이터를 객체(object)와 그 객체가 가진 속성·메서드로 표현하며 상속, 캡슐화, 다형성 등의 개념으로 복잡한 데이터를 다루는 모델이다. 데이터를 "개체와 관계로 표현하고 일반화·집단화 개념을 추가한다"는 서술은 개체-관계(E-R) 계열의 의미적 데이터 모델을 가리키는 표현이므로, 객체지향형 모델에 대한 설명으로는 옳지 않다.
MS-SQL Server, 오라클(ORACLE), MY-SQL은 모두 데이터를 테이블 형태로 관리하는 관계형 데이터베이스 관리 시스템(RDBMS)이다.
파이썬(Python)은 데이터베이스 관리 시스템이 아니라 데이터베이스에 접속하고 다루는 데 사용될 수 있는 프로그래밍 언어이므로 RDBMS의 종류에 해당하지 않는다.
거래명세서나 세금계산서처럼 디자인이 이미 정해져 있는 정형화된 업무용 서식은 업무 문서 양식 마법사를 이용하면 별도의 디자인 작업 없이 손쉽게 보고서를 생성할 수 있다.
새 보고서나 보고서 디자인은 처음부터 직접 레이아웃을 구성해야 하고, 보고서 마법사는 필드를 선택해 일반적인 형태의 보고서를 만드는 기능으로, 정해진 양식의 문서를 만드는 데는 업무 문서 양식 마법사가 더 적합하다.
콤보 상자의 행 원본은 목록에 표시할 데이터를, 컨트롤 원본은 값을 바운드시킬 필드를, 바운드 열은 콤보 상자에 실제로 저장될 열을 지정하는 속성이다.
반면 사용 가능(Enabled) 속성은 컨트롤이 포커스를 받아 사용될 수 있는지 여부를 설정하는 속성이며, 값의 편집 가능 여부를 결정하는 것은 '잠금(Locked)' 속성이다. 따라서 사용 가능 속성이 데이터의 편집 여부를 설정한다는 설명은 옳지 않다.
보고서의 레코드 원본은 [속성 시트]의 '레코드 원본' 드롭다운에서 테이블이나 쿼리를 선택해 지정할 수도 있고, 쿼리 작성기로 새 쿼리를 작성해 지정할 수도 있으며, 보고서 마법사를 이용하면 원하는 필드를 손쉽게 골라 레코드 원본으로 구성할 수 있다.
레코드 원본은 하나의 테이블뿐 아니라 여러 테이블을 연결한 쿼리나 SQL 문도 지정할 수 있으므로, 기본적으로 하나의 테이블에서만 필드를 선택해 지정한다는 설명은 옳지 않다.
Weekday([출고일], 1)은 일요일을 1로 시작하는 요일 번호를 반환하고, DateDiff("d", [출고일], Date())는 출고일부터 오늘까지 경과한 일수를 계산하며, Month([출고일])=9 조건은 출고일이 9월인 레코드만 걸러낸다.
다만 DateAdd 함수의 두 번째 인수로 쓰인 "y"는 연 단위가 아니라 일 단위(day of year)를 더하는 간격 지정자이다. 연도를 더하려면 "yyyy"를 사용해야 하므로, DateAdd("y", 5, Date())가 오늘 날짜에 5년을 더한다는 설명은 옳지 않다.
'레이아웃 보기'는 실제 데이터를 표시한 상태에서 서식과 컨트롤 속성을 조정할 수 있고, '디자인 보기'는 컨트롤의 속성·맞춤·위치 등을 설정하는 화면으로 실제 데이터 내용은 표시되지 않으며, '인쇄 미리 보기'는 [인쇄] 메뉴에서 실행해 인쇄될 모양을 그대로 보여준다.
'보고서 보기'는 인쇄 미리 보기와 달리 페이지 구분 없이 화면에 연속적으로 보고서 내용을 표시하는 보기 형태이므로, 페이지를 구분해 표시한다는 설명은 옳지 않다.
[학생] 테이블 디자인 보기
| 필드 이름 | 데이터 형식 |
|---|---|
| 학번 (기본 키) | 텍스트 |
| 성명 | 텍스트 |
| 동아리 | 텍스트 |
SELECT 동아리 FROM 학생
GROUP BY 동아리
HAVING COUNT(*)>2;
[학생] 테이블은 학번(기본 키)·성명·동아리 세 개의 텍스트 필드로 이루어져 있으므로, 한 레코드는 학생 한 명과 그 학생이 가입한 동아리를 나타낸다.
SQL문은 GROUP BY 동아리로 같은 동아리 값을 가진 레코드들을 하나의 그룹으로 묶고, HAVING COUNT(*)>2로 그룹에 속한 레코드 수가 2보다 큰, 즉 3개 이상인 그룹만 남긴다. 출력하는 열은 동아리 하나뿐이다.
한 레코드가 학생 한 명이므로 그룹의 레코드 수는 곧 그 동아리에 가입한 학생 수가 된다. 결과적으로 가입한 학생이 3명 이상인 동아리의 이름 목록이 나온다. HAVING은 이렇게 그룹으로 묶은 뒤 그룹 전체에 적용하는 조건이며, 개별 레코드를 먼저 걸러내는 WHERE와 구분해야 한다. 또 결과로 나오는 것은 학생이 아니라 동아리라는 점, 기본 키가 학번이라 한 학생이 여러 동아리를 가진 형태는 이 테이블 구조에서 표현되지 않는다는 점도 함께 확인할 수 있다.
크로스탭 쿼리는 값을 요약해 한 집합은 왼쪽의 행 머리글로, 다른 한 집합은 위쪽의 열 머리글로 배치해 표 형태로 보여주는 쿼리로, 테이블이나 쿼리를 데이터 원본으로 사용하며(폼이나 보고서는 원본으로 쓸 수 없음), 열과 행이 교차하는 값 부분에는 숫자뿐 아니라 개수(Count) 등 다양한 집계 함수의 결과를 표시할 수 있다.
크로스탭 쿼리를 작성할 때 행 머리글은 최대 3개까지 필드를 지정할 수 있으며(열 머리글은 1개만 지정 가능), 이 설명이 크로스탭 쿼리에 대한 옳은 내용이다.
insert into member(id, password, name, age) values(...), update member set age=17 where id='a001', delete from member where id='a001'은 모두 표준적인 INSERT·UPDATE·DELETE 구문 형식을 따르고 있다.
반면 DISTINCT 키워드는 SELECT 바로 뒤에 위치해 "SELECT DISTINCT * FROM ..."의 형태로 써야 하며, "select * distinct from member..."처럼 DISTINCT를 필드 목록 뒤, FROM 앞에 두는 것은 올바른 구문 형식이 아니다.
폼 디자인 보기에서 일정 영역의 컨트롤을 한 번에 선택하려면 마우스로 원하는 컨트롤들이 모두 포함되도록 드래그하면 된다.
드래그로 그려진 사각형 영역에 걸치는 컨트롤들이 모두 함께 선택되며, 이는 액세스 폼 디자인에서 가장 기본적인 다중 선택 방법이다.
참고로 <Ctrl>+는 특정 구역만이 아니라 폼에 배치된 컨트롤 전체를 선택하는 단축키이므로, 본문 영역의 컨트롤만 골라 선택하는 방법으로는 쓸 수 없다.
외부 데이터 가져오기 기능으로 테이블에 데이터를 가져올 때는 텍스트 파일, Excel 파일, XML 파일 등 정형화된 형식의 데이터를 지원한다.
Word 파일은 문서 편집을 위한 서식·문단 정보 위주의 형식으로, 액세스 테이블로 직접 가져올 수 있는 외부 데이터 형식에 해당하지 않는다.
[부서] 테이블의 '부서코드'를 기본키로, [사원] 테이블에 그 값을 참조하는 외래키를 두고 관계를 설정한 상황에서 '항상 참조 무결성 유지'를 설정하면, [사원] 테이블에 새로운 사원 레코드를 입력할 때 그 사원의 '부서코드' 값이 [부서] 테이블에 이미 존재하는 값이어야만 입력이 허용된다.
참조 무결성을 설정하지 않으면 이러한 제약이 적용되지 않으므로 [부서] 테이블에 없는 부서코드도 [사원] 테이블에 입력할 수 있게 되고, 참조 무결성을 설정하더라도 부서코드 변경이나 삭제 시 관련 레코드가 자동으로 갱신·삭제되게 하려면 '관련 필드 모두 업데이트'나 '관련 레코드 모두 삭제' 옵션을 별도로 지정해야 한다.
액세스에서 날짜 필드의 '형식' 속성에는 기본 날짜(General), 자세한 날짜(Long), 보통 날짜(Medium), 간단한 날짜(Short)가 있으며, 이 중 간단한 날짜 형식이 '2015-10-13'처럼 연-월-일을 숫자로 짧게 표시하는 방식에 해당한다.
기본 날짜는 날짜와 시간을 함께 표시하고, 자세한 날짜와 보통 날짜는 요일명이나 월 이름을 문자로 풀어서 표시하므로 제시된 형식과는 차이가 있다.
액세스에서는 한 테이블 안에서 동일한 이름의 필드를 두 개 이상 만들 수 없다. 필드 이름은 테이블 내에서 서로 겹치지 않는 고유한 이름이어야 한다.
필드 이름은 숫자로 시작하는 것도 가능하고, 테이블 이름과 같은 이름을 필드 이름으로 지정하는 것도 허용되며, 다만 마침표(.), 느낌표(!), 대괄호([ ]) 등 일부 특수 기호는 사용할 수 없어 모든 기호를 조합할 수 있는 것은 아니다.
폼은 테이블, 쿼리, SQL 문 등을 '레코드 원본' 속성으로 지정해 데이터 입력·편집 인터페이스로 사용할 수 있고, '기본 보기' 속성에서 단일 폼, 연속 폼, 데이터시트, 피벗 테이블, 피벗 차트, 분할 표시 폼 중 원하는 보기 형식을 고를 수 있다. 이벤트 처리에 사용할 작성기도 식 작성기, 매크로 작성기, 코드 작성기 중에서 선택할 수 있다.
폼의 제목 표시줄에 표시되는 텍스트는 '캡션(Caption)' 속성으로 지정하는 것이며, '이름' 속성은 폼 개체 자체를 구분하는 내부 이름이므로 제목 표시줄 텍스트를 이름 속성으로 변경한다는 설명은 옳지 않다.
[만들기] 탭 [폼] 그룹에서 '폼 분할' 명령을 선택하면 하나의 폼 위쪽에는 폼 보기, 아래쪽에는 데이터시트 보기가 함께 표시되는 분할 폼이 만들어진다.
'여러 항목'은 데이터시트와 비슷하게 여러 레코드를 한 화면에 표시하는 폼이고, '폼 마법사'는 단계별 안내에 따라 폼을 만드는 기능이며, '모달 대화상자'는 확인 버튼이 있는 대화상자 형태의 폼으로, 모두 폼 보기와 데이터시트 보기를 동시에 표시하는 기능은 아니다.
폼 마법사에서 폼의 모양(레이아웃)을 지정할 때 선택할 수 있는 항목은 컬럼 형식, 테이블 형식, 데이터시트, 맞춤이다.
'피벗 테이블'은 폼의 '기본 보기' 속성에서 선택할 수 있는 보기 형태 중 하나일 뿐, 폼 마법사가 제공하는 모양(레이아웃) 선택 항목에는 포함되지 않는다.