본문 바로가기
아이티/엑셀

너무 쉬운 엑셀 강좌 실전 예제 초등 수학 사칙연산 자동 문제지(시험지) 만들기

by 베베슈슈 2023. 11. 28.

엑셀강좌 메인 이미지
엑셀강좌 메인 이미지

목차

    실전예제에 앞서

    오늘은 실전예제를 통해 그동안 익혔던 기능을 복습해보려고 한다. 
    기술이라는 게 익히더라도 계속 연습하지 않으면 쉽게 잊어버리게 되어서
    실제로 필요한 예제가 중간중간에 있어야 하는데 어떤 게 좋을까 하다가
    처음에 만들어 봤던 곱셈 문제지 만들기가 생각났다.
    https://blog.naver.com/jinjungby/223262395889

     

    공부의 핵심은 복습이다.

    안녕하세요! 진정비입니다. 오늘은 논어의 가장 첫 편인 <학이>에서도 가장 첫 번째 문장을 소개합니...

    blog.naver.com

     
    일전에 봤던 블로그에 있던 글인데 공자님의 말씀이다. 좋은 말씀이 많으니 한번 둘러보는 것도 좋을 것 같다.
    배우고 나서 수시로 복습해야 한다는 말로 복습을 통해 배운 것을 자기 것으로 해야 한다는 것을 강조한 글이다.
    공부의 진리 같은 말이다. 요즘 말로는 자기주도 학습? ㅎㅎ
     
    하단에 강좌 파일을 붙여두었으니 연습용으로 사용하시길 바랍니다.

    사칙연산 문제지 생성기 틀 만들기

    우선 문제지 틀을 만들기 위해 시트를 두개 생성한다.
    왼쪽 시트서식이 될 것이고, 오른쪽 시트데이터베이스(DB) 역할을 하게 된다.
    시험지에는 10문제를 생성할 수 있도록 배치하고 일단 값들을 써서 모양을 만들어 본다.
    시험지의 제일 위에 제목을 넣고 문제지를 출력한 날짜와 점수를 기록할 칸을 만든다.

    시험지 생성 예제
    시험지 생성 예제

    이제 Ctrl + P를 눌러 인쇄 시 보이는 모양을 점검한다.

    시험지 인쇄 테스트
    시험지 인쇄 테스트

    시험지의 여백이 남는 쪽이 있으면 위아래를 늘여서 시험치 출력 모양을 조정한다.

    데이터베이스 만들기

    시험지를 만들었다면 이번에는 데이터 베이스를 만들어야 한다.
    우선 시트를 하나 더 생성한다.
    두 수를 사칙연산하도록 하는 시험지를 만들 계획이니만큼 큰 수, 작은 수, 연산기호, 정답을 넣을 수 있도록 값을 넣어본다. 연산기호나 정답은 사실 적을 필요가 없지만 정답지로 활용할 생각이라서 아래와 같이 만들어 보았다.

    데이터베이스 작성
    데이터베이스 작성

    큰 수와 작은 수는 랜덤으로 만들어져야 하기 때문에 RANDRANDBETWEEN을 이용해서 값이 자동으로 입력되도록 만들어야 한다.
    2023.11.21 - [아이티/엑셀] - 엑셀 강좌 RAND, RANDBETWEEN, 수학 곱셈 시험지 만들기(문제지 생성기)

     

    엑셀 강좌 RAND, RANDBETWEEN, 수학 곱셈 시험지 만들기(문제지 생성기)

    목차 딸아이의 숙제를 검사하다가 곱셈 문제를 낼 필요가 생겼다. 한땀한땀 문제를 내다보니 이걸 며칠 반복할 생각에 좀 더 쉽고 보기 좋게 가는 방법이 없을까!! 그래서 엑셀 파일을 열었다.

    beshutt.tistory.com

    랜덤함수 사용법은 이전의 랜덤함수 강좌를 이용하면 도움이 될 것 같다.
    그런데 랜덤함수를 만들 때 랜덤 값을 설정할 수 있도록 하기 위해 설정탭을 만들고 RANDBETWEEN안의 값은 설정탭에 있는 값을 사용하도록 한다.

    문제지를 생성하기 위한 콘트롤러 생성
    문제지를 생성하기 위한 콘트롤러 생성

    큰 수는 =RANDBETWEEN($J$3, $K$3), 작은 수는 =RANDBETWEEN($J$4, $K$4) 값을 입력해서 오른쪽 컨트롤러에서 값을 조정할 수 있도록 한다.
     
    컨트롤러에서 문제의 유형도 설정할 수 있게 하였는데 값을 잘못입력하지 않도록 하기 위해서 드롭박스를 이용했다.

    문제유형은 드롭박스를 이용해서 생성
    문제유형은 드롭박스를 이용해서 생성

    그런데 사칙연산이다 보니 값이 네 가지나 되어서 IF로는 제어가 힘들다.
    그래서 IFS나 SWITCH를 사용하여야 하는데 J1셀의 값이 무엇인가로 제어가 되기 때문에 IFS보다는 SWITCH를 사용해 보았다.
    C열에 =SWITCH($J$1,"더하기", "+", "빼기", "-", "곱하기", "x", "나누기", "÷") 이렇게 입력해서 J1의 값에 따라서 부호를 만들게 해 보았다.
    이번에는 정답에 들어갈 내용도 SWITCH를 이용해서 만들어 보았다.
    2023.11.27 - [아이티/엑셀] - 엑셀 강좌 IF, IFS, SWITCH

     

    엑셀 강좌 IF, IFS, SWITCH

    목차 IF문 사용하기 IF문의 이해 IF문은 둘 중 하나의 값을 선택할 때 사용한다. 엑셀에서 SUM과 함께 가장 많이 사용되는 함수 중 하나일 것 같다. 문법 : IF( 조건, True, False) 조건은 말 그대로 조건

    beshutt.tistory.com

    F열에는 =SWITCH($J$1, "더하기", SUM(B2,D2), "빼기", IMSUB(B2,D2), "곱하기", PRODUCT(B2,D2), "나누기", QUOTIENT(B2, D2)) 이렇게 입력해보았다.

    • SUM( 값 1, 값 2, ... ) : 값들을 모두 더한다.
    • IMSUB( 값 1, 값 2 ) : 두개의 값을 입력할 수 있고 앞의 수에서 뒤의 수를 뺀다.
    • PRODUCT( 값 1, 값 2, ... ) : 값들을 모두 곱한다.
    • QUOTIENT( 값 1, 값 2 ) : 값 1을 값 2로 나눈 몫을 반환한다.
    • MOD( 값 1, 값 2 ) : 값 1을 값 2로 나눈 나머지를 반환한다.

    QUOTIENT는 몫을 반환하기 때문에 나머지도 정답지에 표시하기 위해 G열에 MOD 함수를 사용하여 나머지를 표시한다.
    표시해놓고 보니 더하기, 빼기를 할 때도 나머지가 나오게 되어 마음이 불편해진다...
    G열에는 =IF($J$1="나누기", MOD(B2,D2), "") 이렇게 변경하여 나누기를 계산하는 경우에는 나머지를 표시하고 그렇지 않은 경우에는 ""(빈 값)를 표시하여 아무런 값이 없도록 만든다.

    문제지와 데이터시트 연결하기

    이제 조금만 더 하면 손쉽게 시험문제를 낼 수 있는 시험지를 완성할 수 있다.
    2023.11.27 - [아이티/엑셀] - 엑셀 유용한 기능 소개

     

    엑셀 유용한 기능 소개

    목차 오늘은 엑셀을 사용할 때 필요한 유용한 기능에 대해서 소개해보고자 한다. VLOOKUP이나 COUNTIF처럼 유용하고 강력한 도구들도 있지만 그런 부분은 따로 정리해 보기로 하고 이번엔 그보다는

    beshutt.tistory.com

    시험지 시트에서 1번 문제를 선택한 뒤 큰 수 값이 들어갈 자리를 클릭하고 =만들기!B2 라고 입력해 준다.
    이는 만들기 시트에 있는 B2 셀의 값을 가져와서 표시하겠다는 뜻이다.
    마찬가지로 아래의 값은 =만들기!D2, 연산기호는 =만들기!C2라고 표시한다.
    1번 문제는 만들기 시트(DB 시트)의 2번 행으로 만들어진다는 의미다.

    시험지 링크 예제
    시험지 링크 예제

     
    2번 ~ 10번까지도 같은 방법으로 값을 매치시켜준다.
    이제 시험지를 다 만들었으니 만들기 시트에서 문제 생성 범위를 조정하고, 문제의 유형을 선택하면
    시험지가 자동으로 만들어진다. 
    (이전에도 언급했지만 랜덤함수는 어떤 셀이건 값이 하나라도 바뀌면 전부 갱신되니 주의)
     
    시험지 탭에서 인쇄 한 뒤 아이에게 웃으며 전해주자.
     
    데이터베이스에서는 이런저런 로직을 만들어서 값들을 생성하고
    시험지 시트에서는 단순히 해당 행에 있는 값들만 가지고 오면 된다. 
    이런 구조를 선호하는 이유는 나중에 수정할 일이 생길 때 데이터베이스 시트만 수정하면 되기 때문이다.
    서식과 데이터를 하나로 합쳐놓으면 수정할 때 어려움이 따르니
    꼭 시트를 나눠서 작업하는 습관을 가지는 것이 좋다.
     

    베베슈슈의 사칙연산 문제지 생성기_배포.xlsx
    0.02MB


    실전예제 엑셀파일은 연습용으로 사용하셔도 되고 초등학생 자녀가 있으시면 시험문제를 내는데 활용하셔도 좋습니다.