별의 공부 블로그 🧑🏻‍💻
728x90
728x170

[컴퓨터활용능력 1급 실기] 상시 시험 문제 복원

 

I. 액셀/스프레드시트

[매크로] 셀 값이 30 이상이면 빨간색으로 글자 앞에 ◆를 붙이고 천단위 구분 기호를 표시한 후, 숫자 뒤에 "명"을 붙이고, 그 외에는 천단위 구분기호로 표시하고 숫자 뒤에 "명"을 표시하며, 0일 경우 기호 '@'로 표시하는 매크로를 작성하시오.
정답 [빨강][>=30]◆#,##0"명";[>0]#,##0"명";"@"
참고 *공식 : 양수;음수;0
*조건이나 글꼴 색 지정 시 대괄호([])로 감싸기

 

[매크로] 셀 값이 3일 때 "안녕"을, 5일 때 "잘가", 그 외 값은 빈칸으로 처리하는 매크로를 작성하시오.
정답 [=3]"안녕";[=5]"잘가";""
참고 *조건이나 글꼴 색 지정 시 대괄호([])로 감싸기

 

[매크로] 셀의 내용이 10 이상일 경우, ★을 맨 왼쪽, 셀의 내용을 맨 오른쪽으로, 10 미만일 경우, ★을 맨 오른쪽, 셀의 내용을 맨 왼쪽으로 표시하는 매크로를 작성하시오.

정답 [>=10]"★"* #;[<10]#* "★"
참고 *애스터리스크(*) 문자를 사용하여 이 문제를 간단하게 해결할 수 있다.
*사용자 지정 기호 "*"
- "*" 다음의 문자를 셀의 너비만큼 반복하여 표시
- "* "와 같이 "*" 다음에 빈칸을 삽입하면, 셀의 너비만큼 빈칸을 반복하여 표시한다.

 

[데이터 유효성 검사] [A2:A10]까지 데이터 유효성 검사를 이용하여 '@'가 반드시 입력되도록 설정하시오.
정답
참고 *수식을 사용하여 범위를 지정할 때, 첫셀만 지정하면 됨.
(데이터 유효성 검사 설정을 하기 전에 이미 적용할 범위를 지정했기 때문)
*SEARCH("찾는문자", 범위) => 찾을 경우, 문자를 찾은 곳의 위치 반환.
*두 번째 글자 이후에 반드시 '@'가 포함된 이메일주소가 입력되도록 제한 대상을 설정하시오.
=SEARCH("@", A2) >=2

 

[데이터 유효성 검사] [A2:A10]까지 데이터 유효성 검사를 이용하여 12의 배수 관계의 숫자만 입력할 수 있도록 하시오.
정답
참고 *수식을 사용하여 범위를 지정할 때, 첫셀만 지정하면 됨.
(데이터 유효성 검사 설정을 하기 전에 이미 적용할 범위를 지정했기 때문)
*MOD(범위, 나누는수)

 

[차트] 
▶ 차트 종류를 '표식이 있는 꺾은선형'으로 변경하시오. 변경한 후 '합계, 가계장학' 계열은 삭제하시오.
▶ '근로 장학' 계열은 보조축으로 지정한 후 , <그림>과 같이 축서식을 변경하시오.
▶ 차트 제목을 [A1]셀과 연동한 후 , 범례는 삭제하시오.
▶ <그림>과 같이 '데이터 테이블'을 표시하시오.
▶ 데이터 레이블을 <그림> 과 같이 설정 한후 데이터 레이블 도형을 '타원형 설명선'으로 변경하시오.
▶ 차트의 주 눈금선을 '회색- 50%, 강조3 설정 후 '파선'으로 적용하시오.


정답
참고 *데이터 테이블 표시

*데이터 레이블 도형 설정
먼저 데이터 레이블을 표시한 후, 데이터 레이블 클릭 -> 데이터 레이블 도형 변경 -> 도형 선택

*데이터 레이블에 표시할 내용 설정하기
데이터 레이블 클릭 -> 데이터 레이블 서식 -> 레이블 내용 수정

 

[차트] 
▶ '별정통신서비스' 계열이 제거되도록 데이터 범위를 수정하시오.
▶ '차트 종류를 '묶은 세로 막대형'으로 변경하시오.
▶ 차트 제목은 '차트 위'로 추가하여 <그림>과 같이 입력하시오.
▶ '기간통신서비스' 계열의 '2021'년 요소에만 데이터 레이블 '값'을 표시하고, 레이블의 위치를 '가운데'로 설정하고 데이터 레이블 도형을 '모서리가 둥근 직사각형'으로 변경하시오.
▶ 세로 축 값의 가로축 교차를 <그림> 과 같이 설정하시오.

정답
참고 *세로 축 값의 가로축 교차 설정하기
위의 정답의 <그림>처럼 그래프가 10,000부터 나타나도록 하려면 다음과 같이 설정해 주면 된다.
[세로 (값) 축 서식]

 

[프로시저]
1. 판매입력' 단추를 클릭하면 사용자 정의 폼 <등록폼> 폼이 화면에 나타나도록 이벤트 프로시저를 작성하고, <등록폼>이 화면에 나타나면 결재구분(cmb구분) 콤보상자에 워크시트 [L4:L7]셀까지 목록으로 추가되는 프로시저를 작성하시오.

2. <등록폼> 폼 화면에서  txt제품명이 비어 있는 경우 '제품명을 입력하세요.", txt수량이 비어있는 경우 "수량을 입력하세요."
txt단가가 비어있는 경우 "단가를 입력하세요.", cmb구분을 선택하지 않은경우 "결재구분을 선택하세요." 라는 메시지 박스를 출력하고 이 모두를 입력했을 때만 폼의 데이터를 워크시트에 입력 하시오.
▶ 등록이 끝난 후 새로운 제품명, 수량, 단가, 결재구분을 작성 할 수 있도록 초기화 하시오.
금액은 단가 * 수량이며 통화 기호를 붙이시오.

3. '조회' 단추를 클릭하면 표에 입력된 제일 마지막의 데이터를 폼에서 표시하시오.

4. '모두 지우기' 단추를 클릭하면 txt제품명, txt수량, txt단가, cmb구분의 데이터 값을 삭제할 수 있도록 하시오.

5. '수량'의 스핀단추를 클릭할 때마다 1씩 증가, 감소 하도록 하시오.

6. '종료' 단추를 클릭하면 오늘은 총 ?건 판매되었습니다. 메시지 박스를 띄운 후 폼을 종료하세요.

정답 Private Sub CommandButton1_Click()
    '생략
    
    입력행 = [B3].Row + [B3].CurrentRegion.Rows.Count
    
    Cells(입력행, 2) = txt제품명
    Cells(입력행, 3) = Val(txt수량)   '값(Value) 형식으로 변환
    Cells(입력행, 4) = Val(txt단가)
    Cells(입력행, 5) = Format(Cells(입력행, 3) * Cells(입력행, 4), "Currency")      '통화(Currency) 형식으로 변환
    Cells(입력행, 6) = cmb구분
    Cells(입력행, 7) = CDate(txt판매날짜)    '날짜(Date) 형식으로 변환
    
    '생략
End Sub

Private Sub spin수량_Change()
    txt수량 = spin수량 * 1     '1*1, 2*1, 3*1 ...
End Sub

참고 *Val() 함수는 컨트롤의 값을 Value 형식으로 변환시켜줌.
*CDate() 함수는 컨트롤의 값을 날짜(Date) 형식으로 변환시켜줌.
*통화 형식으로 셀에 값을 표시하려면 Format(식, "currency") 같이 사용하면 됨.
*Spin 기능 구현은 spin * 1과 같이 함.

 

[매크로] 아파트동호수[A2:A6]셀에 대하여 맨뒤에 숫자가 5보다 크면 왼쪽부터 x동 yyy호, 5보다 작으면 xx동 yyy호 변경되는 매크로를 생성하시오.
예) 1505 ▶ 1동 505호
     15223 ▶ 15동 223호

정답 ##"동"###"호"
참고  

 

[매크로] 아파트동호수[A2:A6]셀에 대하여 10000이상 데이터는 x단지 yyyy호, 10000 미만 데이터는 x단지 yyy호로 변경되는 매크로를 생성하시오.
예) 51102 ▶ 5단지 1102호
     5102 ▶ 5단지 102호

정답 [>=10000]0"단지 "0000"호";0"단지 " 000"호"
참고  

 

[매크로] 점수[C2:C10]셀에 대하여 50이상일때는 소수점 첫째 자리까지 표시하고, 이외에는 ◭를 표시하시오
정답 [>=50]0.0;"◭"
참고 *"◭"와 같은 특수문자는 이모지 선택창을 이용하여 표시한다. ([윈도우 키] + [;]/[.])

 

[매크로] 금액[C2:C10]셀에 대하여 1,000이상인 값은 빨강색으로 천단위 구분기호 설정하고 숫자앞 ★표시, 50미만은 파랑색으로 나타내고 숫자 앞 ☆ 표시, 그 외에는 그냥 숫자만 표시하시오.
정답 [빨강][>=1000]★#,##0;[파랑][<50]☆0;0
참고 *특수문자(★, ☆ 등)는 큰따옴표("")로 묶어주지 않고 사용할 수 있음.

 

[데이터 유효성 검사] [A2:A6]셀까지 데이터 유효성 검사를 이용하여 지역(서울,경기,부산)을 목록으로 나타내시오
정답
참고  

 

[매크로] 점수[C2:C10]셀에 대하여 조건부서식을 이용하여 다음과 같은 서식을 사용하여 

50점 미만일 때는


50점 이상일 때는


70점 이상일 때는


를 나타내는 매크로를 작성하시오  

정답
참고 *[새 서식 규칙] -> [셀 값을 기준으로 모든 셀의 서식 지정] -> [서식 스타일]"아이콘 집합"으로 설정

 

[매크로] 점수[C2:C10]셀에 대하여 조건부서식을 이용하여 데이터막대 스타일의 최소값 백분위수 5와, 최대값 95를 적용하고,
그라데이션 채우기 자주색을 적용하시오

정답
참고 *[새 서식 규칙] -> [셀 값을 기준으로 모든 셀의 서식 지정] -> [서식 스타일]"데이터 막대"로 설정

 

[고급 필터] 하루일당은 시간당 10,000원, 분급은 150원으로 계산되었으며 하루일당이 50,000원이상이고 오후 12시부터 오후 6시 미만인 데이터를 고급필터를 이용하여 추출하시오. (AND함수사용)


정답 [조건] =AND(D2 >= 50000, HOUR(B2) >= 12, HOUR(B2) < 18)
참고 *오후 시간24시간 형식을 사용하여 나타낸다.
예) 오후 6시 : 18

 

[고급 필터] 출석[E2:G7]영역이 "O" 이면서 중간고사와 기말고사의 평균이 전체 평균 점수보다 이상인 값을 고급필터를 사용 하여 추출하시오. (AND, COUNTA, AVERAGE 함수 사용)

정답 [조건] =AND(COUNTA(E2:G7), D2 >= AVERAGE($D$2:$D$7))
참고 *COUNTA() 함수는 범위에서 비어있지 않은 셀의 개수를 구하는 함수이다.
범위를 한 번에 정한다. (E2:G7)

 

[차트] 
지역이름[A2:A9]과 인원[B2:B9]셀을 이용하여 원형대원형 차트를 제작하고 '색5'를 적용하시오.
차트제목은 지역인원 비교현황을 적용하고 도형스타일 - 미세효과- 파랑-강조5를 적용하시오.
데이터레이블을 표시하고 다음과 같이 적용하시오
정답
참고 *원형대원형 차트가 출제될 수 있다.

 

[사용자 정의 함수] 사용자 정의함수를 이용하여 fn평가 함수를 제작하고 평가 [D2:D6]셀에 중간고사와 기말고사가 70점 이상이면 평가란에 평균을 구하고 결과값 앞에 Best★을 붙이시오
예) Best★80점

정답 If 중간고사 >= 70 And 기말고사 >= 70 Then
    fn평가 = "Best★" & (중간고사 + 기말고사) / 2
End If
참고  

 

[일반 함수] 등급이 '일반' 또는 '골드'이면서 구입수량이 최빈값 이하인 것에 대한 구입총액 평균을 구하시오. (조건은 G1:G2에 입력)


정답 [조건] =AND(OR(C2 = "일반", C2 = "골드"), D2 <= MODE($D$2:$D$10))
[정답] =DSUM($A$1:$E$10, 5, G1:G2)
참고 *MODE() 함수는 최빈값(가장 많이 나오는 값)을 출력한다. (MODE($D$2:$D$10) -> 3)

 

[일반 함수] 등급이 '골드'인 사람의 성별 '남' 의 비율을 구하시오. (DCOUNTA, COUNTA 함수 사용) (조건은 G1:H3 범위 내에 입력)
=> 똑같은 문제로 COUNTIFS, COUNTA로도 출제될 수 있음.


정답 [조건]

[정답] =DCOUNTA($A$1:$E$11, 2, $G$1:$H$2) / COUNTA($B$2:$B$11)
※ =COUNTIFS($C$2:$C$11, "골드", $B$2:$B$11, "남") / COUNTA($C$2:$C$11) (COUNTIFS, COUNTA 사용)
참고 *DCOUNTA, COUNTA 함수를 사용하라는 문제는 대부분 비율을 구하라는 문제이다, (DCOUNTA / COUNTA)
또한, COUNTIFS, COUNTA 함수를 사용하여 똑같은 방법으로 비율을 구할 수도 있다. (COUNTIFS / COUNTA)
*COUNTIFS(범위1, 조건1, 범위2, 조건2, ...)

 

[고급 필터] [A1:H25] 영역에서 ID번호의 마지막 1글자가 짝수이고, 인공지능 점수가 90점 이상인 자료의 ID번호와 성명만 표시하시오. (ISEVEN, AND, RIGHT함수 사용)

정답 [조건] =AND(ISEVEN(RIGHT(A2, 1)), D2 >= 90)
참고  

 

[고급 필터] [A1:H25] 영역에서 결제구분이 체크카드가 아니면서 구입총액이 구입총액의 평균을 초과하는 값에 해당하는 데이터를 고급필터를 사용해서 표시하시오. (AND, AVERAGE 함수 사용)

정답 [조건] =AND(B2 <> "체크카드", H2 > AVERAGE($H$2:$H$25))
참고  

 

[조건부 서식] [A1:K24] 영역에 대한 다음과 같이 조건부 서식을 설정하시오.
적립포인트가 상위 1위와 하위 1위의 값에 해당하는 행 전체에 대해서 글꼴 스타일은 '굵게', 글꼴색은 '표준색-빨강'으로
적용하는 조건부 서식을 작성하시오.
단, 규칙 유형은 '수식을 사용하여 서식을 지정한 셀 결정'을 이용하시오. (OR, RANK.EQ 함수 사용)


정답 =OR(RANK.EQ($K2, $K$2:$K$24) = 1, RANK.EQ($K2, $K$2:$K$24, 1) = 1)
참고 *조건부 서식 범위는 반드시 필드 부분만 지정한다. (A2:K24)
*RANK.EQ(순위를_구하려는_수, 범위, 순위를_정할_방법)
=> ANK.EQ($K2, $K$2:$K$24) = 1 (상위 1위 구하기)
=> ANK.EQ($K2, $K$2:$K$24, 1) = 1 (하위 1위 구하기)

 

[조건부 서식] [A1:H25] 영역에 대한 다음과 같이 조건부 서식을 설정하시오.
3D프린팅의 점수가 상위 10위이내 해당하는 행 전체에 대해서 글꼴 스타일은 '굵게', 글꼴색은 '표준색-파랑'으로 적용하는 조건부 서식을 작성하시오.
단, 규칙 유형은 '수식을 사용하여 서식을 지정한 셀 결정'을 이용하시오. (RANK.EQ 함수 사용)

정답 =RANK.EQ($H2, $H$2:$H$25) <= 10
참고 *~이내 : 이하(<=)

 

[조건부 서식] [A1:H25] 영역에 대한 다음과 같이 조건부 서식을 설정하시오.
단가가 제일 크거나, 제일 작은 값에 해당하는 행 전체에 대해서 글꼴 스타일은 '굵게', 글꼴색은 '표준색-빨강'으로 적용하는 조건부 서식을 작성하시오.
단, 규칙 유형은 '수식을 사용하여 서식을 지정한 셀 결정'을 이용하시오. (OR, LARGE, SMALL 함수 사용)


정답 =OR($F2=LARGE($F$2:$F$25, 1), $F2=SMALL($F$2:$F$25, 1))
※ =OR($F2=MAX($F$2:$F$25), $F2=MIN($F$2:$F$25))
참고 *SMALL이나 LARGE 함수를 사용할 경우, 중복되는 값이 표시될 수 있음.
*MAXMIN 함수를 사용하여도 똑같은 결과를 낼 수 있음.

 

[조건부 서식] [B2:B10] 셀에서
범위의 90% 이상 

70%이상~90%미만

나머지는


아이콘 집합을 설정하시오


정답
참고 *반드시 종류를 숫자로 설정한 후, 값은 90%일 경우 0.9와 같이 적음.

 

[일반 함수] 등급이 '일반' 또는 '골드'이면서 구입수량이 최빈값 이하인 것에 대한 구입총액 평균을 구하시오. (조건은 G1:G2에 입력)


정답 [조건] =AND(OR(C2 = "일반", C2 = "골드"), D2 <= MODE($D$2:$D$10))
[정답] =DSUM($A$1:$E$10, 5, G1:G2)
참고 *MODE() 함수는 최빈값(가장 많이 나오는 값)을 출력한다. (MODE($D$2:$D$10) -> 3)

 

[일반 함수] 등록일과 생년월일을 이용해서 다음과 같은 차이를 구하시오. (QUOTIENT, MOD, & 사용)
1년 365일, 1달 30일 기준으로 하여 0년 0개월로 표시
예) 등록일 2021-03-01일이고 생년월일이 2019-04-01일 경우 1년 11개월로 표시


정답 =QUOTIENT(A2 - B2, 365) & "년" & QUOTIENT(MOD(A2 - B2, 365), 30) & "개월"
참고 *QUOTIENT(숫자, 나누는값) : 나누기 연산에서 을 구하는 함수
*MOD(숫자, 나누는값) : 나누기 연산에서 나머지를 구하는 함수

 

[일반 함수] 중간고사가 90이상이거나, 중간고사가 70미만이면서 기말고사가 중간고사 점수보다 큰 사람의 비율을 [E5]셀에 표시하시오.
조건 : [E3]셀에 입력 (COUNTA, DCOUNTA 함수 사용)


정답 [조건] =(B2 >= 90) + ((B2 < 70) * (C2 > B2))
[정답] =DCOUNTA(A1:C25, 1, E2:E3) / COUNTA(A2:A25)
참고 *DCOUNTA, COUNTA 함수가 사용되는 문제는 대부분 비율을 구하는 문제임. (COUNTIFS, COUNTA 함수로도 똑같은 결과를 낼 수 있음.)

 

[일반 함수] 적립포인트가 5,000원 이상인 것의 해당하는 총 대여료 평균을 구하고 10,000을 나눈 값에 대한 것을 ★로 [F2]셀에 표시하시오. (REPT, QUOTIENT, AVERAGEIF 함수 사용)
예) 총대여료 / 10,000 몫이 5인 경우 ★★★★★ 로 표시


정답 =REPT("★", QUOTIENT(AVERAGEIF(E2:E24, ">=5000", D2:D24),10000))
참고 *REPT(문자, 반복횟수) : 문자를 반복횟수만큼 나타내는 함수
*QUOTIENT(숫자, 나누는값) : 나누기 연산에서 을 구하는 함수
*AVERAGEIF(조건범위, 조건, 평균구할범위)

 

[일반 함수] [A1:E24] 표를 이용하여 각 회원구분별, 고객등급별 회원수를 [H4:J4]에 표시하시오.
(COUNT, IF 함수를 활용한 배열 수식)


정답 =COUNT(IF((B2:B24 = G4) * (C2:C24 = H3), 1))
참고  

 

[일반 함수] [A2:A8]의 코드의 첫글자가 T면 전화, S면 문자, 그외면 방문으로 표시하고, 누적의 개수를 괄호속에 표시하고 [B2:B10]셀까지 나타내시오
예) 전화(3건), 방문(2건), 문자(1건)

정답 =IF(LEFT(A2, 1) = "T", "전화(" & COUNTIF(A2:A2, "T*" ) & "건)", IF(LEFT(A2, 1) = "S", "온라인(" & COUNTIF(A2:A2, "S*") & "건)", "방문(" & COUNTIF(A2:A2, "V*") & "건)"))
참고 *누적 개수 구하기
COUNTIF($A$2:A2, "T*" ) 와 같이 COUNTIF 함수의 인자에 "$(시작셀):현재셀"을 조건 범위로 지정하면 됨. ***와일드 카드 문자 '*'를 사용하여 문장 안에 특정 문자의 존재 여부를 파악할 수 있음.

 

[일반 함수] [E2:E6] 셀에 할부 기간별 수수료율을 이용하여 지불수수료를 구하시오.
지불수수료 = 매출액 X 수수료율
결제방법에서 "한국카드"를 제외한 나머지 카드는 "기타카드"로 처리
HLOOKUP, MATCH 함수 사용


정답 =B2 * HLOOKUP(C2, B8:E11, MATCH(D2, {"한국카드", "대한카드"}, -1) + 2)
참고 *결제 방법에는 "대한카드"와 "한국카드" 밖에 없음. 따라서 "대한카드"는 "기타카드"라고 할 수 있음.
결제 방법이 '한국카드'일 경우, HLOOKUP는 3(=1+2) 번째 필드의 값을 갖게 되고, 결제 방법이 '대한카드'일 경우 HLOOKUP은 4(=2+2) 번째 필드의 값을 찾게 됨.
*HLOOKUP의 마지막 옵션 -1'내림차순'으로 찾겠다는 것을 뜻함. (ㅎ->ㄷ) 

 

[일반 함수] [B1:B7] 셀에 과목별, 초급, 중급, 고급의 개수를 구하시오 (COUNT, FIND 함수 사용)

정답 =COUNT((FIND(B8, A1:A7)) * (FIND(A9, A1:A7)))
참고 *FIND(찾을값, 범위) : 범위에서 찾을값이 포함된 위치를 반환하는 함수
예) =FIND(B8, A1) => 4

 

[데이터 통합 기능] 다음의 지시사항을  처리하시오.
데이터 통합 기능을 이용하여 '박물관 입장객 현황(A3:E23)' 표에 대한 박물관별 '성인', '청소년', '어린이'의 평균을 [H4:J8] 영역에 계산하시오.

정답
참고 *따로따로 참조범위를 지정하면 안됨. 이런 종류의 문제는 전체 범위를 한꺼번에 지정한 후 데이터 통합을 해야 함.

 

[데이터 통합 기능] 다음의 지시사항을  처리하시오.
텍스트 나누기 후, 데이터 통합 기능을 이용하여 'A2:A14' 표에 대한 구매자수, 수량, 단가를 'K3:M15'영역에 통합하시오.


정답


참고 *텍스트 나누기는 [데이터] 탭 -> [텍스트 나누기]를 통해 실행할 수 있음.

 

[차트] 
1. 3차원 X회전을 150도로 설정하세요.
2. 밑면을 삭제하세요.
3. 주눈금선을 삭제하세요.
4. 세로 축 교차를 2로 설정하세요.
5. 세로축 제목을 스택형으로 만들고 축제목을 차트예제로 기재.
6. 차트를 교육 테마로 변경하세요.

정답


 

   
참고  

 

[프로시저] 시트가 활성화 될 때(Activate) [A1]셀에 대하여 열너비 5, 행높이 30으로 하는 프로시저를 구현하시오.
정답 Private Sub Worksheet_Activate()
    [A1].ColumnWidth = 5
    [A1].RowHeight = 30
End Sub
참고  

 

 

II. 액세스

[유효성 검사 규칙] <상시복원> 테이블의 '만료일' 필드는 '시작일' 필드보다 후의 값만 작성될 수 있도록 유효성 검사 규칙을 작성하시오. 유효성 검사 규칙에 위배되는 값을 입력한 경우 "만료일은 시작일보다 이전 일 수는 없습니다. 이후의 날짜를 입력하세요."를 표시하시오.
정답 테이블 속성 - 속성 시트 - 유효성 검사 규칙 -> [만료일] > [시작일]
테이블 속성 - 속성 시트 - 유효성 검사 텍스트 -> 만료일은 시작일보다 이전 일 수는 없습니다. 이후의 날짜를 입력하세요.
참고 *테이블의 필드 간의 유효성 검사 규칙은 위해서는 테이블 속성 시트에서 설정해주어야 함.

 

[유효성 검사 규칙] <상시복원> 테이블의 '이름' 필드는 4글자 이하만 입력되도록 유효성 검사 규칙을 작성하시오.
정답 Len([이름]) <= 4
참고  

 

[조회] <상시복원> 테이블의 cmb항목 콤보상자를 활성화 할 수 있도록 설정하시오.
정답 콤보상자 속성 - 사용 가능 ->
참고  

 

[보고서] 출발지별통행내역 보고서에서 본문 내역의 'txt순번' 컨트롤에는 그룹별로 일련번호가 표시되도록 설정하시오.
정답 txt순번 컨트롤 - 컨트롤 원본 -> =1 / 누적 합계 -> 그룹
참고  

 

[폼완성] 거래내역 폼의 본문 영역의 'txt거래처명' 컨트롤은 폼의 'txt거래처코드'에 해당하는 거래처명이 표시 되도록 설정하시오.
DLOOKUP 함수 사용
정답 =DLookUp("거래처명", "거래처", "거래처코드=txt거래처코드")
참고 *공식 : D___("필드명", "레코드 원본 또는 찾아야 될 테이블이나 쿼리명", "필드명 = 컨트롤명")

 

[쿼리] <상시복원> 테이블의 '이름', '나이' 필드를 이용하여 매개변수 쿼리를 제작하시오.
매개변수 1 : ?세 이상
매개변수 2 : ?세 이하
정답 [나이] 필드
조건 : >=[?세 이상] And <= [?세 이하] 
참고 *공식 : D___("필드명", "레코드 원본 또는 찾아야 될 테이블이나 쿼리명", "필드명 = 컨트롤명")

 

[쿼리] <상시복원> 테이블의 '구분', '숫자' 필드를 이용하여 '숫자'가 10미만에 해당하는 값만 나오는 쿼리를 제작하시오.
Like 연산자 사용
정답 [숫자] 필드
조건 : Like "[1-9]"
참고 *Like "[A-Z]"와 같이 사용 가능함.

 

[매크로] 영업소이용관리 폼에 cmd보고서 단추를 클릭할 때, "출발지별통행내역" 보고서를 인쇄 미리 보기로 열고, "지역정보" 테이블을 읽기 전용으로 여는 "매크로예제"를 제작하시오.
정답 OpenReport, OpenTable
참고  

 

[매크로] 영업소이용관리 폼에 cmd보고서2 단추를 클릭할 때, "출발지별통행내역" 보고서를 인쇄 미리 보기로 열고, 오늘 날짜 + 보고서를 여시겠습니까? 메시지 박스를 띄우는 "abc매크로"를 제작하시오.
정답 MsgBox, OpenReport
=Date() & " 보고서를 여시겠습니까?"
참고  

 

[이벤트 프로시저] 영업소이용관리 폼에 cmd통행요금표 단추를 더블 클릭할 때 아래와 같은 메시지 박스가 나온 후 cmb지역조회 컨트롤 값을 초기화 한 후 cmb지역조회 컨트롤의 포커스가 이동하도록 이벤트 프로시저를 구현하시오.
정답 Private Sub cmd통행요금표_DblClick(Cancel As Integer)
    Dim a
    a = MsgBox("조회하시겠습니까?", vbYesNo, "물음")
    If a = vbYes Then
        cmb지역조회 = ""
        cmb지역조회.SetFocus
    End If
End Sub
참고  

 

[이벤트 프로시저] 영업소이용관리 폼에 cmd찾기 버튼을 클릭할 때 txt지역명이 비어있는 경우 "값을 입력하세요" 아닌 경우 "비어 있지 않음" 으로 표시하는 메시지 박스를 띄우는 이벤트 프로시저를 구현하시오.
정답 Private Sub cmd찾기_Click()
    If IsNull([txt지역명]) Then
        MsgBox "값을 입력하세요"
    Else
        MsgBox "비어있지 않음"
    End If
End Sub
참고  

 

[쿼리] <상시복원> 테이블의 '휴대폰' 필드가 010을 포함하지 않거나 비어있는 경우, 해당 필드 값을 "수정" 테이블로 생성하는 쿼리를 작성하시오.
정답 [휴대폰] 필드1 (표시 O)
조건 : Not Like "*010*"

[휴대폰] 필드2 (표시 X)
또는 : IsNull
참고  

 

[이벤트 프로시저] 영업소이용관리 폼에 'txt지역명'에 '지역명'을 입력하고 '조회(cmd조회)' 버튼을 클릭하면 다음과 같이 동작하도록 이벤트 프로시저를 작성하시오.
- 'txt지역명' 컨트롤에 입력된 '지역명' 레코드가 조회되도록 할 것
(단, txt지역명 컨트롤이 비어있지 않은 경우에만 조회가 되도록 하고 조회가 완료된 후 다음과 가은 메시지 박스가 나오도록 구현할 것)
- Filter, FilterOn 속성을 이용할 것
정답 Private Sub cmd조회_Click()
    If txt지역명 <> "" Then
        Me.Filter = "지역명 = '" & txt지역명 & "'"
        Me.FilterOn = True
        MsgBox "지역이 조회가 되었습니다", vbOKOnly, "물음"
    End If
End Sub
참고  

 

[폼 완성] ‘예제1’의 ‘txt연습’의 컨트롤을 ‘콤보상자’로 변경 후 값을 ‘월’,‘화’,‘수’,‘목’,‘금’을 입력받도록 설정하세요.
정답 txt연습 컨트롤 클릭 후 - 마우스 오른쪽 버튼 - 변경 -> 콤보 상자
행 원본 유형
: 값 목록
행 원본 : 월; 화; 수; 목; 금
참고 *세미콜론(;)으로 구분해줌.

 

[폼 완성] ‘웨딩예약관리현황 보고서’에서 본문영역의 ‘웨딩시간’필드가 오후 12시 이상인 자료만 채우기 ‘노랑’을 적용하세요.
정답 조건부 서식
[식이] [웨딩시간] >= # 12:00 #
채우기 : 노랑
참고 *날짜, 시간과 관련된 연산을 하려면, 날짜/시간을 #으로 둘러싼 후 사용해야 함.

 

[쿼리] ‘주문횟수조회’크로스탭 쿼리를 제작한 후 그림과 같이 표시하시오. (열머리글 순서관련)

정답 속성 시트 -> [열 머리글] : 중국, 미국, 한국
참고 *열 머리글의 순서를 바꾸려면 속성 시트의 [열 머리글]을 수정해주면 됨.

 

[쿼리] 아래와 같은 선택쿼리를 제작하고 ‘전자제품’테이블을 이용하시오. ‘제품번호’필드의 개수는 ‘제품번호’필드를 이용하고 제품번호의 개수에 따라 ‘■‘ 표시하시오. (String, Count 함수 사용)


정답 제품번호개수 : String(Count([제품번호]), "■")
요약 : 식
참고 *액세스에서 String 함수는 액셀의 REPT 함수와 같음.
String(반복횟수, 문자)

 

[쿼리] 아래와 같은 선택쿼리를 제작하고 ‘학생명단’테이블을 이용하시오. 학번이 20이나 21로 시작하는 쿼리의 데이터만 나오도록 하시오.


정답 [이름] 필드
조건 : Like "20*"
또는 : Like "21*"
참고 *Right() 함수 사용 불가능함.

 

[쿼리] 아래와 같은 크로스탭쿼리를 제작하고 ‘상품명단’테이블을 이용하시오.
Replace 함수를 사용하여 “지점” 단어를 제외하시오.


정답 대리점 : Replace([대리점명], "지점", "")
참고 *Replace(필드명, 바꿀문자, 새로운문자)

 

[쿼리] 아래와 같은 선택쿼리를 제작하고 ‘상품명단’테이블을 이용하시오.
서울을 제외한 대리점들 중에서 금액이 비싼 3위까지 구하시오


정답 속성 시트 - [상위 값] => 3
참고  

 

[쿼리] 아래와 같은 선택쿼리를 제작하고 ‘B2B납품’ 테이블을 이용하시오.
제품코드가 2로 끝나는 데이터만 표시하시오.

정답 [제품코드] 필드
조건
: Like "*2" 
참고 *Right() 함수 사용 불가능함.

 

[쿼리] 아래와 같은 선택쿼리를 제작하고 ‘웨딩예약관리’ 테이블을 이용하시오.
20일 이후의 값만 나타내시오.
cdate, day함수 사용


정답
참고 *'조건'으로 묶어줌.

 

[쿼리] 아래와 같은 크로스탭쿼리를 제작하고 ‘B2B납품’ 테이블을 이용하시오.
월요일과 화요일만 나타내도록 하시오.
Weekday함수 사용

정답 Expr1: Weekday([납품일자], 2)
조건 : <=2
참고 *Weekday(필드명, 2) -> 월:1, 화:2

 

[쿼리] 아래와 같은 선택쿼리를 제작하고 ‘B2B납품’ 테이블을 이용하시오.
2019년의 데이터만 이용하시오.
Month함수, Year함수 사용


정답 납품월 : Month([납품일자]) & "월" 
Expr1 : Year([납품일자])
(표시 X)
조건 : 2019

참고 *Weekday(필드명, 2) -> 월:1, 화:2

 

[쿼리] <씨앗> 테이블을 이용하여 <씨앗입고> 테이블에 없는 씨앗코드를 조회하는 쿼리를 만드시오.
Is Null사용


정답


작성 후, 반드시 "조인" 설정을 해주어야 함. (지정하지 않으면 아무것도 안나옴.)
2: '씨앗'에서는 모든 레코드를 포함하고 '씨앗입고'에서는 조인된 필드가 일치하는 레코드만 포함.
참고 *Is Null을 사용해야 하는 문제에서, 결과값이 아무것도 나오지 않을 경우, 조인 속성을 설정해야 함.

 

[쿼리] <씨앗> 테이블을 이용하여 <씨앗입고> 테이블에 없는 씨앗코드를 조회하는 쿼리를 만드시오.
Not In 사용


정답
참고  

 

[폼 완성] ‘환자관리’폼의 하위 폼 본문의 ‘txt서비스명’ 컨트롤에 '서비스명'이 표시되도록 구현하시오.
(실제 시험 때는 환자, 신청목록, 유형, 서비스, 서비스신청현황, 서비스현황 테이블 및 쿼리만 존재)
Dlookup 함수 사용
※ 폼 화면에는 '서비스코드'가 표시되어 있지 않음.
정답 =DLookUp("서비스명", "서비스신청현황", "[서비스신청현황]![환자코드] = Forms![환자관리]![환자코드]")
참고  

 

[폼 완성] ‘상품목록’ 폼의 레코드 원본을 참조하여 ‘거래처번호’에 해당하는 ‘거래처명’이 ‘txt거래처명’ 컨트롤에 표시되도록 컨트롤 원본을 설정하시오.
‘상품목록’ 폼에는 ‘거래처번호’ 필드가 표시되어 있지 않음.
Dlookup함수 사용
정답 =DLookUp("거래처명", "거래처", "거래처번호 = Forms![상품목록]![거래처번호]")
참고 *Dlookup 정리
■ 테이블 및 쿼리에 해당 필드가 있을 때
거래처번호를 기준으로 =Dlookup(“필드명”, “테이블명”, “[거래처번호]=[forms]![폼이름]![거래처번호]”)
테이블 및 쿼리에 해당 필드가 없을 때
=Dlookup(“필드”, “테이블명”, “[테이블명]![거래처번호]=[forms]![폼이름]![거래처번호]”)

 

[이벤트 프로시저] <배당조회> 폼의 '조회(cmd조회)' 단추를 클릭할 때 다음과 같은 기능을 수행하도록 이벤트 프로시저를 구현하시오.
▶ 'txt회사명' 컨트롤에 입력된 회사명을 포함하는 자료의 정보만 표시
▶ 폼의 Filter 및 FilterOn 속성 이용
정답 Private Sub cmd조회_Click()
    Me.Filter = "회사명 = '*" & txt회사명 & "*'"
End Sub
참고 * "(     )을 포함하는 ~" : Like *문자* 를 사용하여 문제를 해결한다.

 

[보고서] 본문의 'txt종목코드'와 'txt회사명' 컨트롤은 그룹 내에서 첫 번째 값만 표시되도록 설정하시오.
정답 [중복 내용 숨기기] : 예
참고

 


참고

[스프레드시트/액셀] 피벗 테이블

  • [삽입] 탭 -> [피벗 테이블]
    • 지문 : '외부 데이터 원본으로 ~'
    • 파일 형식 : .xlsx, .csv
  • [데이터] 탭 -> [외부데이터 가져오기]
    • 지문 : '외부 데이터 가져오기 기능을 이용하여 ~' 
    • 파일 형식 : .txt, .accdb

 

[스프레드시트/액셀] 차트

  • 계열 겹치기
    • 최대 100% 설정 가능
    • 숫자가 작을 수록 간격이 벌어짐.
  • 간격 너비
    • 최대 500% 설정 가능
    • 계열겹치기를 기본으로 하기에 값이 커질수록 항목 사이가 벌어지고, 0% 가까울 수록 막대가 넓어짐.

 

[스프레드시트/액셀] 피벗 테이블

  • '데이터 모델에 이 데이터 추가'를 선택하여 피벗 테이블을 생성할 경우, 피벗 테이블 내에서 그룹을 설정할 수 없음.
그룹을 지정하려고 할 경우, 다음과 같은 오류 메시지가 나온다.

 

[스프레드시트/액셀] 프로시저

  • 프로시저 메서드가 기억이 안날 때, 임의로 매크로를 생성하여 알 수 있음.
    • Visual Basic Editor에서 매크로 확인 
    • 확인 후, 반드시 생성한 매크로를 삭제해야 함.

 

728x90
그리드형(광고전용)
⚠️AdBlock이 감지되었습니다. 원할한 페이지 표시를 위해 AdBlock을 꺼주세요.⚠️
starrykss
starrykss
별의 공부 블로그 🧑🏻‍💻


📖 Contents 📖